+38/050/370-3627
+38/093/220-0872
+38/044/257-2444
Новини

Microsoft відкрила вихідні тексти проекту Pyright, системи перевірки типів для мови Python

Microsoft відкрила вихідні тексти проекту Pyright, системи перевірки типів для мови Python

Microsoft відкрила вихідні тексти проекту Pyright, в рамках якого розвивається система для застосування статичної типізації у додатках мовою Python. Для розробників пропонується утиліта командного рядка для перевірки типів та плагін для інтегрованих середовищ розробки, що підтримують протокол LSP (Language Server Protocol), таких як Visual Studio Code, Nuclide та Atom. Код написаний мовою Typescript (діалект JavaScript зі статичною типізацією), використовує Node.js і відкрито під ліцензією MIT.

Інформація про типи може визначатися в коді через додавання додаткових анотацій до змінних (PEP 526, наприклад "#type: List[int]"), TypeVar-підказок у стилі mypy (PEP 484, наприклад "def greeting(name: str ) -> str:") або застосування структурних підтипів (PEP 544). Pyright підтримує виведення типів для значень, локальних змінних, змінних класів і глобальних змінних, що повертаються функціями. Системою також застосовуються розумні обмежувачі типів, що враховують розгалуження коду з використанням операторів if/else.

Pyright працює приблизно в п'ять разів швидше за mypy та інші системи перевірки типів, написаних мовою Python. Висока продуктивність дозволяє використовувати Pyright для великих кодових баз, для роботи в режимі безперервного відстеження при редагуванні і для швидкого інкрементального оновлення при зміні файлів. Для роботи Pyright не потрібне встановлення Python-оточення, але потрібна наявність Node.js.

Крім інструментів для аналізу та перевірки коду до складу також входить підготовлений проектом Typeshed набір stub-файлів (".pyi"), що містять інформацію про типи стандартних бібліотек stdlib. Плагін для IDE підтримує виведення підказок з інформацією про тип, перехід до позиції з визначенням змінної та забезпечення зворотного зв'язку під час редагування.

Інші новини

Найкраща ціна