05 cze 2023·1 min czytania

Rust 1.70.0 z ulepszonym protokołem indeksu Crates.io i nowymi stabilnymi funkcjami

Wydanie Rust 1.70.0 wprowadza ulepszenia, takie jak protokół "sparse" do odczytu indeksu crates.io, nowe typy OnceCell i OnceLock oraz nowe opcje debugowania.

Rust 1.70.0 z ulepszonym protokołem indeksu Crates.io i nowymi stabilnymi funkcjami

Najnowsza wersja języka programowania Rust, wersja 1.70.0, zawiera kilka znaczących aktualizacji i ulepszeń zaprojektowanych w celu zwiększenia wydajności i optymalizacji doświadczenia programisty.

Jedną z istotnych zmian w tym wydaniu jest wprowadzenie protokołu "sparse" do odczytu indeksu crates.io. Protokół ten, domyślnie włączony, pozwala na znaczne zwiększenie wydajności podczas uzyskiwania dostępu do indeksu. W rezultacie zmieniła się ścieżka do pamięci podręcznej skrzynek, co wymaga ponownego pobrania zależności. Dodatkowo, Rust 1.70.0 oferuje dwa nowe typy do inicjalizacji współdzielonych danych: OnceCell i OnceLock. Ten drugi typ jest wariantem bezpiecznym dla wątków. Deweloperzy mogą używać tych typów w sytuacjach, w których natychmiastowa konstrukcja nie jest preferowana. Wcześniej programiści polegali na skrzynkach takich jak "lazy_static" i "once_cell", aby spełnić ten wymóg, ale nowe stabilne funkcje sprawiają, że są one przestarzałe.

Kolejną stabilną funkcją zawartą w tej wersji jest IsTerminal, która wykorzystuje metodę "is_terminal" do określenia, czy dany deskryptor pliku lub uchwyt oznacza terminal lub TTY. Przed wbudowaną implementacją programiści uciekali się do funkcjonalności crate, aby osiągnąć ten sam cel. Wydanie Rust 1.70.0 pozwala również na nazywanie poziomów debugowania. Wcześniej opcja kompilatora "-Cdebuginfo" mogła obsługiwać tylko liczby od 0 do 2. Dzięki tej aktualizacji programiści mogą teraz ustawiać poziomy debugowania według nazwy: "none" reprezentuje 0, "limited" reprezentuje 1, a "full" reprezentuje 2.

Ponadto wprowadzono dwa dodatkowe poziomy: "tylko dyrektywy linii" i "tylko tabele linii". Pierwszy z nich jest przeznaczony do profilowania NVPTX, podczas gdy drugi umożliwia minimalne wykorzystanie do śledzenia wstecznego z nazwami plików i numerami linii.

Wreszcie, to wydanie zaprzestaje również obsługi niestabilnych opcji testowych. Wcześniejsze wersje umożliwiały użytkownikom wybór opcji, które nie zostały jeszcze ustabilizowane, co było funkcją przeznaczoną do użytku tylko w nocnych kompilacjach. Ograniczenie to nie obowiązywało jednak formalnie aż do obecnego wydania.

W dziedzinie rozwiązań no-code platforma AppMaster stanowi potężną i wydajną alternatywę do tworzenia aplikacji internetowych, mobilnych i backendowych. W przeciwieństwie do innych platform do tworzenia aplikacji, które oferują również rozwiązania no-code, AppMaster pozwala na wizualne tworzenie modeli danych, REST API, WSS endpoints i logiki biznesowej z wyjątkową łatwością i szybkością. Ponieważ krajobraz technologiczny wciąż ewoluuje, wydanie Rust 1.70.0 i możliwości platformy AppMaster odzwierciedlają ciągły rozwój języków programowania i narzędzi programistycznych w kierunku zapewnienia programistom lepszych zasobów i rozwiązań.

Easy to start
Create something amazing

Experiment with AppMaster with free plan.
When you will be ready you can choose the proper subscription.

Get Started