-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Feat/automatic update installation #5345
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
Feat/automatic update installation #5345
Conversation
Signed-off-by: AdemolaAri <ademola.ari@gmail.com>
…logic Signed-off-by: AdemolaAri <ademola.ari@gmail.com>
Signed-off-by: AdemolaAri <ademola.ari@gmail.com>
bdab6cc to
ddccbb6
Compare
|
Thank you for your contribution! Let me add the tags, and tag teammates for review. @DOsinga @alexhancock @michaelneale @jamadeo @zanesq @angelahning As we are in the weekend in AU and in the states, expect a review come Monday, ET! @AdemolaAri |
|
Thanks @AdemolaAri! I tested locally and it seems to download the update but it didn't actually install it after restart does it work for you? Also a few minor things with the experience:
2. The prompt after downloading still shows the text to the user to extract the file and move to Applications. After clicking this it open downloads it closes the app. Can we improve this experience a bit?
|
|
@zanesq , auto-install did not work for me on mac. from my findings, it seems Mac does not allow auto-install of unsigned app which is what builds locally. to really test auto-install, we'll need a signed app - which I believe only the app owners can do. chatGPT breakdown and references to this (https://chatgpt.com/share/690015a1-9500-800a-96a9-830079e13087) I'll work on those other items. |
|
.bundle |
|
ok thanks looking into how we can test a signed version of this.. also if you want to look at #5424 while you are at it |
|
quick heads up timing wise! @zanesq - Hacktoberfest has a deadline where all PRs need to be merged by October 31st (Friday). To make sure contributor PRs like this one hit that deadline on time, aiming to have these PRs reviewed and approved (if we're able) by EOD tomorrow (October 30th)! Let me know if you think it's possible for this one 🙏 and thank you for working on this, @AdemolaAri ! |
|
Not sure if this will make it unfortunately since there are still changes requested and we need to test in an actual signed release. I'll try to get a signed release tested with the current changes so we can rule that out at least. |
|
after the requested changes are made and approved if this doesn't break anything we can merge to main to test on a signed build and revert if needed |
|
@taniandjerry , I'm sorry I've not been able to work on the other things I need for this - I do not have access to my computer until this Friday. It's fine if this doesn't count towards HacktoberFest. I plan to get the updates on this PR out sometime this weekend |
That is amazing. Since your submission would likely pass beyond hacktoberfest, but you've been working on this feature with @zanesq that will make an impact on users for goose, I'll definitely be sure we are able to reward you in some way for still working on this. 🤗 ❤️ looking forward to getting this across the finish line! |
|
@michaelneale made a signed build to test from this branch but I get the following error message
|
@zanesq interesting. I believe you're hitting this code block, I added https://github.com/block/goose/pull/5345/files#r2457676532 . I encountered this when the app detects that there's a new version available, but when the code scans the release version repository it couldn't find a build for that assetName. Yeah, I thought I resolved it by making the assetName search case insensitive but might need some cleanups there |
|
not latest version its 1.11.0 in the screenshot and latest is 1.12.1 |
- Modify SettingsRoute component to extract section from URL search params - Extend viewOptions to include section from URL if provided - Ensure backwards compatibility with existing location.state and history.state methods - Improve flexibility for deep linking to specific settings sections Signed-off-by: AdemolaAri <ademola.ari@gmail.com>
Signed-off-by: AdemolaAri <ademola.ari@gmail.com>
Signed-off-by: AdemolaAri <ademola.ari@gmail.com>
|
@zanesq , Now when you click the Also, fixed Please review and let me know :) |
6f5955f to
5026922
Compare
|
Thanks tested latest signed build from this branch and the download did work but the progress bar was jumpy until it finally downloaded (see below for recording) Kapture.2025-11-10.at.16.41.58.mp4It didn't do the auto install but did open the downloads directory with the download. Since its downloading now I think we can merge this after fixing the jumpy progress bar if you want to take a look at that then we can come back to the auto install in another PR later. |
oh yeah, turns out i already worked on a fix for that but holding off on pushing it. If all looks good, we can get this merged and revisit auto install. |
- Add debounce mechanism to prevent UI flickering during download progress - Round download percentage to reduce unnecessary state updates - Implement progress update throttling in GitHub updater - Add cleanup for progress timeout to prevent memory leaks - Optimize progress reporting frequency to reduce render cycles Reduces unnecessary re-renders and improves overall update download experience by implementing more efficient progress tracking mechanisms. Signed-off-by: AdemolaAri <ademola.ari@gmail.com>
|
Still jumpy for me, also it seems to kick it off twice after it finishes it tries again to download at the end. Please verify it works on your end in the app. One more thing since auto install isn't working we should change that language to not say it will be auto installed after restart before we merge. Kapture.2025-11-11.at.09.04.14.mp4 |
…ved progress handling Signed-off-by: AdemolaAri <ademola.ari@gmail.com>
|
@zanesq i'm back at this. sorry i was away for a few weeks. Jumpy download bar should be fixed now. Screen.Recording.2025-11-29.at.10.45.59.PM.movAnd I added the appropriate wording around auto-downloading but not auto-installing. I also added an 'open downloads and quit' action in the dialog to take users to the download folder and auto-quit the app removing one manual step at least. Screen.Recording.2025-11-29.at.10.48.31.PM.movIt does seem like auto-install works when the download is done thru the native electron path. The github fallback path seem to not be able to do auto-install for some reason. (I'm limited by not being able to do/test a signed build so just going by the code logic) Pls test again and let me know how it goes. |
zanesq
left a comment
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.
Verified LGTM thanks!
* origin/main: Feat/automatic update installation (#5345) fix: Added "Merged consecutive assistant messages" to the acceptable issues for moim injection check (#5933) fix: anthropic provider model fetching (#5932) [MCP-UI] add CSP for images to proxy HTML (#5931) fix: correct typo in blog post (AIMDOEL -> AIMODEL) (#5902) feat: @goose in terminal (native terminal support) (#5887) docs: adding AI-friendly features (#5918) Blog/advent of ai announcement (#5917) Extension selector behind ALPHA flag (#5892)
* 'main' of github.com:block/goose: Feat: Added custom headers and toggle keyring CLI options (#5017) Feat/automatic update installation (#5345) fix: Added "Merged consecutive assistant messages" to the acceptable issues for moim injection check (#5933) fix: anthropic provider model fetching (#5932) [MCP-UI] add CSP for images to proxy HTML (#5931)
…nses-streaming * 'main' of github.com:block/goose: Feat/automatic update installation (#5345) fix: Added "Merged consecutive assistant messages" to the acceptable issues for moim injection check (#5933) fix: anthropic provider model fetching (#5932) [MCP-UI] add CSP for images to proxy HTML (#5931) fix: correct typo in blog post (AIMDOEL -> AIMODEL) (#5902) feat: @goose in terminal (native terminal support) (#5887) docs: adding AI-friendly features (#5918) Blog/advent of ai announcement (#5917) Extension selector behind ALPHA flag (#5892) blog: typo fixes (#5896) blog: fixing img url (#5895) blog: MCPs for Developers (#5884) docs: Extension Manager MCP (#5883) Update cleanup marker logic for Fedora users. (#5868) Improve AWS credential loading and configuration handling in BedrockProvider (#5699)
…0-5147 * 'main' of github.com:block/goose: (243 commits) chore: upgrade npm packages (#5951) feat: ActionRequired (#5897) feat(acp): support loading sessions in acp (#5942) docs: add videos to multi-model page (#5938) docs: promote planning guide (#5934) fix: use a lock to ensure only need to run tunnel just in case multiple go… (#5885) Feat: Added custom headers and toggle keyring CLI options (#5017) Feat/automatic update installation (#5345) fix: Added "Merged consecutive assistant messages" to the acceptable issues for moim injection check (#5933) fix: anthropic provider model fetching (#5932) [MCP-UI] add CSP for images to proxy HTML (#5931) fix: correct typo in blog post (AIMDOEL -> AIMODEL) (#5902) feat: @goose in terminal (native terminal support) (#5887) docs: adding AI-friendly features (#5918) Blog/advent of ai announcement (#5917) Extension selector behind ALPHA flag (#5892) blog: typo fixes (#5896) blog: fixing img url (#5895) blog: MCPs for Developers (#5884) docs: Extension Manager MCP (#5883) ... # Conflicts: # crates/goose-server/src/routes/config_management.rs # crates/goose/src/providers/mod.rs # ui/desktop/openapi.json # ui/desktop/src/api/sdk.gen.ts # ui/desktop/src/api/types.gen.ts # ui/desktop/src/components/ProgressiveMessageList.tsx




Summary
This is a feature request (#4322) to have goose auto-download and install updates when available. This change adds that functionality.
Type of Change
Testing
Manual testing of the actual build. I added console.log statements and followed the follwing steps
Note: because these builds are unsigned, i wasn't able to test the auto-install part. I believe that should work as well.
Related Issues
Relates to #ISSUE_ID
Discussion: LINK (if any)
#4322
Screenshots/Demos (for UX changes)
Before:
After:



|
|
|
|
Email: