-
Notifications
You must be signed in to change notification settings - Fork 44
[C-838] Fix desktop update banner flow #1719
Conversation
Preview this change https://demo.audius.co/rj-c-838 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Kinda confused on how this is working. Doesn't this conditional conflict with the one we have in the handler? https://github.com/AudiusProject/audius-client/blob/main/packages/web/src/pages/App.js#L287
Are we losing the forced major version updates with this?
Based on the code in this change-- If we are running 1.0.1 and 1.0.2 exists, electron will recognize an update, but because major and minor are the same, will not send an If we are running 1.0.1 and 1.1.0 exists, electron will recognize an update, and because minor version is different, it will send an |
But doesn't the handler in App.tsx already only show the banner if it's a minor or major version update? Won't auto-updater still download the patch version in the background anyway? Maybe I'm still not quite understanding, lets chat in our 1 on 1 |
1195fa9
to
39fb657
Compare
Redid this PR |
Preview this change https://demo.audius.co/rj-c-838 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This mostly makes sense but we are still setting showWebUpdate
to true:
audius-client/packages/web/src/pages/App.js
Line 283 in 39fb657
this.setState({ showWebUpdate: true }) |
Yeah great catch. That's how it was working before |
Preview this change https://demo.audius.co/rj-c-838 |
if (this.state.showUpdateAppBanner) { | ||
this.dismissUpdateAppBanner() | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this no longer necessary because the app is going to restart on update and not show the banner after?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Basically there are two flows for upgrading desktop:
- An update to entire electron app (you need a new chromium basically)
- An update to just the static JS for the SPA
KJ added the latter recently, which lets us basically not worry about showing a banner for the former and letting auto update on quit take care of that behind the scenes. There's still banner that shows that will get dismissed in the below method (acceptWebUpdate) but that's for the latter SPA refresh
[3394a06] Fix infinite lineup fetch (#1940) Sebastian Klingler [19381a3] [C-296] Persist stack history across bottom tabs (#1939) Dylan Jeffers [6705cb5] [C-1118] Send tip -> send audio (#1937) nicoback2 [9c63ab7] [C-1023] [C-1039] Sync account entropy from webview and improve splashscreen (#1938) Sebastian Klingler [e3d9cc4] [C-1064] Show "You're Offline" component on mobile (#1936) Andrew Mendelsohn [16a8b96] [C-1113] Improve native render performance (#1935) Dylan Jeffers [7f4ede3] Fix broken signup on web (#1934) Michael Piazza [2373ae0] fix rewards claim (#1933) nicoback2 [54dcd64] [C-1107] Fix push to sign in when identity is down (#1931) Raymond Jacobson [43222ee] [C-1091] Improve selector performance (#1932) Dylan Jeffers [eee12c7] Add request pagination for favorites for the new table (#1850) Kyle Shanks [5d43c12] upgrade sdk (#1929) nicoback2 [2fd28e4] [Reloaded] No more useDispatchWeb, messages C-1089 (#1927) nicoback2 [6fc8709] Merge pull request #1928 from AudiusProject/jn-exporter-default Johannes Naylor [24d9d3b] [C-838] Fix desktop update banner flow (#1719) Raymond Jacobson [aace104] remove console exporter and change default to undefined Johannes Naylor [81e9a4d] Detach mobile reachability state from non existent webview C-938 (#1913) nicoback2 [9c6c067] Merge pull request #1878 from AudiusProject/jn-con-385 Johannes Naylor [5f335bb] Update mobile readme install instructions (#1926) Dylan Jeffers [8469883] [C-907] Fix react native push notifications (#1922) Raymond Jacobson [543b013] Fix pull to refresh (#1925) Sebastian Klingler [370088e] Fix issue with using `accountUser` handle (#1924) Sebastian Klingler [5a496fa] fix more by artist lineup (#1921) nicoback2 [cab5181] downgrade node Johannes Naylor [5602eab] pin deps Johannes Naylor [7a95b3f] Fix infinite 404 (#1920) Sebastian Klingler [8cdc9b9] [C-1060] Fix /check page (#1919) Raymond Jacobson [375c5dd] [PAY-578] Fade in socials on mobile user screen (#1905) Reed [2b1cc7f] Wait for libs before signing data (#1918) Sebastian Klingler [d06e2c1] update env var Johannes Naylor [5efd985] [C-1031] Improve profile expand section touch target (#1911) Dylan Jeffers [f327636] [C-1053] Fix ios status color in dark/light modes (#1917) Dylan Jeffers [7a167b6] [C-1050] Fix profile search crash (#1916) Dylan Jeffers [32b8c82] [C-1057] Fix blank edit-profile screen (#1915) Dylan Jeffers [406e6c0] no more useselector web (#1914) nicoback2 [98ed3f6] [C-1029] Fix pull-to-refresh (#1912) Dylan Jeffers [7582351] Migrate useGetFirstOrTopSupporter (#1910) Sebastian Klingler [b9e4e41] add env vars Johannes Naylor [44060c1] remove telemetry Johannes Naylor [53483ef] remove telemetry Johannes Naylor [ae57626] remove telemetry Johannes Naylor [0515567] more telemetry Johannes Naylor [2da8c47] install Johannes Naylor [379af75] Merge branch 'main' into jn-con-385 merge main Johannes Naylor [d0deea6] changing things around Johannes Naylor [22288b1] [C-1012] Remove web build from mobile build (#1907) Raymond Jacobson [8572ee3] [C-1027] Improve bottom-bar perf (#1909) Dylan Jeffers [a41d536] the goods Johannes Naylor [128aa9b] move the instrumentation to the audiusBackend Johannes Naylor [a27c976] Fix profile clearing (#1908) Dylan Jeffers [75e6eec] Remove react-nil and NATIVE_NAVIGATION (#1906) Dylan Jeffers [ebbb561] Update social features to use entity manager (#1853) Isaac Solo [99952d1] [C-990] Nativefy oauth (#1885) Raymond Jacobson [c149204] Fix failing CI init (#1904) Sebastian Klingler [d436adb] [C-1009] Fix misaligned social icons (#1901) Dylan Jeffers [d21d5d4] [C-1020] Remove web pushes (#1902) Dylan Jeffers [600f673] [C-711] Change useSize to useMeasure in ProfileBio (#1903) Reed [497da98] stuff Johannes Naylor [7f4a144] try a bunch of things Johannes Naylor [66995fa] Clean up some more instances of useSelectorWeb/useDispatchWeb (#1900) Sebastian Klingler [3383135] Nativefy remixes screen (#1887) nicoback2 [8b0d1e5] Fix edit profile screen (#1899) Sebastian Klingler [fb3c189] [C-996] Remove NATIVE_MOBILE references (#1895) Dylan Jeffers [bb0a03e] Fix lineup state persisting across profile screens sliptype [5150a58] [PAY-626] Change playlist+tip challenges copy and emoji (#1897) Reed [e816c64] [PAY-625] Playlist challenge optimistic claiming (#1891) Reed [f3c02b6] [C-892] Fix multiple menus open at once (#1889) Andrew Mendelsohn [192c669] run setupTracing Johannes Naylor [00f3951] add tracer Johannes Naylor
Description
Redid this PR from scratch. @sliptype / @Kyle-Shanks could use extra scrutiny here.
I think there are still two issues with the desktop update flow that prevent "web app" updates from working:
showWebUpdate
to determine whether to show the web update banner, and i'm pretty sure that never gets set to true (it'sshowWebUpdateBanner
), so#1
isn't actually an issue we observeThese changes are set up in a way such though that when we download the electron changes in the background, on restarting, the user will still get the full electron update.
Dragons
Is there anything the reviewer should be on the lookout for? Are there any dangerous changes?
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide repro instructions & any configuration.
Will test after merge to main via the staging desktop app
How will this change be monitored?
For features that are critical or could fail silently please describe the monitoring/alerting being added.
Feature Flags
Are all new features properly feature flagged? Describe added feature flags.