- Notifications
You must be signed in to change notification settings - Fork3
PermalinkChoose a base ref {{ refName }}default Choose a head ref {{ refName }}default
Comparing changes
Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also orlearn more about diff comparisons.
Open a pull request
Create a new pull request by comparing changes across two branches. If you need to, you can also.Learn more about diff comparisons here.
base repository:coder/coder-desktop-macos
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
Uh oh!
There was an error while loading.Please reload this page.
base:v0.4.0
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}defaultLoading
...
head repository:coder/coder-desktop-macos
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
Uh oh!
There was an error while loading.Please reload this page.
compare:v0.4.1
Could not load branches
Nothing to show
Loading
Could not load tags
Nothing to show
{{ refName }}defaultLoading
- 3commits
- 5files changed
- 1contributor
Commits on May 14, 2025
chore: set 'stop VPN on quit' setting to true by default (#155)
It's fair to assume if you're closing Coder Desktop, you want Coder Connect to stop, so this is the default behaviour.Tailscale also stops their VPN when quitting the app, even though it works fine with the app closed.
Commits on May 16, 2025
fix: manually upgrade system extension (#158)
This PR addresses#121. The underlying bug is still present in macOS, this is just a workaround, so I'm leaving the issue open.macOS calls `actionForReplacingExtension` whenever the version string(s) of the system extension living inside the Coder Desktop app bundle change.i.e. When a new version of the app is installed:1. App sends `activationRequest` (it does this on every launch, to see if the NE is installed)2. Eventually, `actionForReplacingExtension` is called, which can either return `.cancel` or `.replace`.3. Eventually,`didFinishWithResult` is called with whether the replacement was successful.(`actionForReplacingExtension` is *always* called when developing the app locally, even if the version string(s) don't differ)However, in the linked issue, we note that this replacement process is bug-prone. This bug can be worked around by deleting the system extension (in settings), and reactivating it (such as by relaunching the app).Therefore, in this PR, when `didFinishWithResult` is called following a replacement request, we instead will:1. Send a `deactivationRequest`, and wait for it to be successful.2. Send another `activationRequest`, and wait for that to be successful.Of note is that we *cannot* return `.cancel` from `actionForReplacingExtension` and then later send a `deactivationRequest`. `deactivationRequest` *always* searches for a system extension with version string(s) that match the system extension living inside the currently installed app bundle. Therefore, we have to let the replacement take place before attempting to delete it.Also of note is that a successful `deactivationRequest` of the system extension deletes the corresponding VPN configuration. This configuration is normally created by logging in, but if the user is already logged in, we'll update the UI to include a `Reconfigure VPN` button.<img width="263" alt="image" src="https://github.com/user-attachments/assets/d874821e-1696-4d17-bb3e-4ea83556f75c" />I've tested this PR in a fresh macOS 15.4 VM, upgrading from the latest release. I also forced the bug in the linked issue to occur by toggling on the VPN in System Settings before opening the new version of the app for the first time, and going through all the additional prompts did indeed prevent the issue from happening.
fix: set network extension as unconfigured when system extension is d…
Loading
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:git diff v0.4.0...v0.4.1
Uh oh!
There was an error while loading.Please reload this page.