VulCode

Zed: nasze zmiany w projekcie open source

Szybki edytor kodu w Ruście od twórców Atoma i Tree-sittera, z pracą zespołową na żywo.

Język
Rust
Gwiazdki na GitHubie
91 587
Strona projektu
zed.dev
1przyjęta zmiana
Scalona 1 października 2026.
Najwięcej gwiazdek wśród 64 projektów na GitHubie z naszymi zmianami.

Zmiana przyjęta w Zed

Wolno ładujący się katalog modeli ChatGPT doczytuje się w tle i nie blokuje już logowania do subskrypcji.

Jak to sprawdziliśmy

Dodaliśmy test test_slow_model_catalog_does_not_block_initial_load z udawanym klientem HTTP, który wstrzymuje odpowiedź. Pierwsze ładowanie kończy się po 5 sekundach z wbudowanymi modelami, a odpowiedź, która przychodzi 30 sekund później, podmienia listę na modele konta.

Rust

Nasze projekty w tej technologii, ich ekrany i to, kiedy ją wybieramy.

Błąd, poprawka i wniosek

Skrót naszego opisu z Nowinek technicznych: co nie działało, co zmieniliśmy i co z tego wynika dla naszej pracy.

Co nie działało

Wolny katalog modeli chował modele konta

Dla części kont katalog modeli z subskrypcji ChatGPT odpowiada po około 30 sekundach, a Zed przerywał zapytanie po 5. Z selektora znikały wtedy modele przypisane do konta.

Co zmieniliśmy

Dwa limity czasu zamiast jednego

Logowanie dalej czeka najwyżej 5 sekund, a zapytanie działa w tle do 60 sekund i podmienia listę modeli, kiedy wróci.

futures::select! {
result = refresh => log_model_catalog_error(result),
() = wait_timeout => {
cx.spawn(async move |_| log_model_catalog_error(refresh.await))
.detach();
}
}
Czego nas to nauczyło

Wolne zapytanie sieciowe nie może blokować logowania.

Rzeczy, które nie są potrzebne od razu, doczytujemy w tle.

Inne projekty z naszymi zmianami: Rust

6 projektów w tej technologii ma nasze przyjęte zmiany. Pasek to gwiazdki repozytorium, obok liczba naszych zmian. Każdy wiersz prowadzi do strony projektu.

Pytania o nasze zmiany w Zed

Skąd są te zmiany, kto je przyjął i czy poprawimy coś w Twojej bibliotece.

Używasz Zed w swoim projekcie?

Jeśli coś w nim nie działa, poprawimy to u źródła i zostawimy obejście do czasu wydania. Odpiszemy w godzinę.