Z przyjemnością ogłaszamy uruchomienie programu wczesnego dostępu (EAP) dla ReSharper 2024.2! Wstępna wersja EAP jest już dostępna do pobrania i oferuje podgląd nadchodzących funkcji i ulepszeń.
ReSharper C++
Ulepszenia refaktoryzacji Rename:
- Zmiana nazwy powiązanych plików: Podczas zmiany nazwy pliku można teraz wybrać również zmianę nazwy odpowiadającego mu pliku nagłówkowego lub źródłowego (RSCPP-35756).
- Zmiana nazwy powiązanego typu: Jeśli plik zawiera typ o podobnej nazwie, refaktoryzacja Rename może zaktualizować nazwę typu podczas zmiany nazwy pliku zawierającego (RSCPP-34045).
- Zmiana nazwy przestrzeni nazw: Zmiana nazwy przestrzeni nazw może teraz wywołać opcję zmiany nazwy pliku zawierającego, zapewniając, że nazwy plików odzwierciedlają ich zawartość (RSCPP-35743).
Inne:
- Clang-tidy 18: Dołączony clang-tidy został zaktualizowany do wersji 18, zawierającej najnowsze kontrole i ulepszenia z projektu LLVM (RSCPP-35656).
- Filtr wywołań metod bazowych: Można teraz użyć opcji Filter Usages w oknie narzędzia Find Results, aby ukryć wywołania metod bazowych, co ułatwia sprawdzanie innych rodzajów użycia (RSCPP-35792).
- Dodano poprawkę reinterpret_cast: ReSharper zapewnia teraz szybką poprawkę, aby dodać reinterpret_cast, upraszczając rozwiązywanie problemów z konwersją typów. Poprawka jest sugerowana tylko dla konwersji, w których typ źródłowy lub docelowy jest wskaźnikiem do char, unsigned char lub std::byte (RSCPP-35763).
- Atrybut C++23 [[assume]]: Poprawiliśmy obsługę atrybutu C++23 [[assume]]. Wyrażenie argumentu w atrybucie jest teraz analizowane i używane przez analizę kodu i podświetlanie składni (RSCPP-35820, RSCPP-35762, RSCPP-35822).
dotMemory
Samodzielna wersja dotMemory oferuje teraz opcję filtrowania instancji obiektów według wartości ciągu znaków. Oto najważniejsze kwestie warte uwagi:
- Teraz po wprowadzeniu dowolnej wartości ciągu znaków w polu filtra w widoku Instancje zestawu obiektów, znalezione wartości zostaną podświetlone w kolumnie Wartość.
- Teraz możliwe jest również wyszukiwanie instancji obiektów według adresu w widoku Instancje.
- Filtr pozwala na użycie wyrażeń regularnych, np. ^nAsso.{5,}ID$ pasuje do nAssociatedObjectID.
dotTrace
Przetwarzanie zrzutów z osi czasu za pomocą profilera wydajności dotTrace jest teraz szybsze niż kiedykolwiek. W najnowszej wersji zapoznawczej poprawiono również wydajność filtrowania, drzewa wywołań i obliczeń hotspotów.
Decompiler / dotPeek
Poniższe zmiany są dostępne w oprogramowaniu ReSharper, Rider i samodzielnej wersji dotPeek:
- Parametry lambda: Wprowadziliśmy obsługę dekompilacji lambd z parametrami opcjonalnymi i parametrami tablicy parametrów, zwiększając czytelność i dokładność dekompilowanego kodu (DOTP-8042).
- Atrybuty w lambdach: Narzędzie oferuje teraz ulepszoną obsługę atrybutów w wyrażeniach lambda, aby zapewnić, że wszystkie istotne metadane są dokładnie odzwierciedlone w zdekompilowanych danych wyjściowych.
- Chronione zestawy: Wprowadziliśmy możliwość określenia, czy chcesz dekompilować chronione zestawy, umożliwiając bardziej wszechstronną eksplorację kodu (RSRP-481584).
Obsługa zewnętrznych źródeł:
- PDB z SrcSrv i SourceLink: dotPeek obsługuje teraz nawigację do źródeł z plików PDB zawierających zarówno SrcSrv, jak i SourceLink, ułatwiając lepszą integrację i debugowanie przepływów pracy (RSRP-496292).
- Dyrektywy preprocesora: Dekompilator poprawnie rozpoznaje teraz dyrektywy preprocesora (takie jak NET6_0_OR_GREATER) z docelowego frameworka lub przenośnego PDB powiązanego zestawu, zapewniając dokładną reprezentację kodu (RIDER-106794).
Okno narzędzia Assembly Explorer:
Wykrywanie konfiguracji kompilacji: Assembly Explorer wykrywa teraz i prezentuje konfigurację kompilacji (Release lub Debug) zestawów, zapewniając jaśniejszy wgląd w kontekst kompilacji zestawu (DOTP-8100).