# copilot: Fix Copilot fails to sign in on newer versions \(\#36195\) · gitcafe/zed

[View on GitCafe](https://git.cafe/gitcafe/zed/commit/2acfa5e948764cbe9ae5cbf9f95d6bf66ea904c2)

Repository: [gitcafe/zed](https://git.cafe/gitcafe/zed)

Visibility: public

Requested revision: 2acfa5e948764cbe9ae5cbf9f95d6bf66ea904c2

Requested commit: 2acfa5e948764cbe9ae5cbf9f95d6bf66ea904c2

Commit: 2acfa5e948764cbe9ae5cbf9f95d6bf66ea904c2

Tree: c94cb70d2c4b61e030649453691035a212478134

Author: smit

Committer: GitHub

## Message

`````
copilot: Fix Copilot fails to sign in on newer versions (#36195)

Follow-up for #36093 and
https://github.com/zed-industries/zed/pull/36138

Since v1.355.0, `@github/copilot-language-server` has stopped responding
to `CheckStatus` requests if a `DidChangeConfiguration` notification
hasn’t been sent beforehand. This causes `CheckStatus` to remain in an
await state until it times out, leaving the connection stuck for a long
period before finally throwing a timeout error.

```rs
let status = server
    .request::<request::CheckStatus>(request::CheckStatusParams {
        local_checks_only: false,
    })
    .await
    .into_response() // bails here with ConnectionResult::Timeout
    .context("copilot: check status")?;
````

This PR fixes the issue by sending the `DidChangeConfiguration`
notification before making the `CheckStatus` request. It’s just an
ordering change i.e. no other LSP actions occur between these two calls.
Previously, we only updated our internal connection status and UI in
between.

Release Notes:

- Fixed an issue where GitHub Copilot could get stuck and fail to sign
in.
`````

## Parents

- [1a169e0b16801b278140bb9a59fa45ab56644f4d](https://git.cafe/gitcafe/zed/commit/1a169e0b16801b278140bb9a59fa45ab56644f4d?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zed/tree/2acfa5e948764cbe9ae5cbf9f95d6bf66ea904c2?format=markdown)
