После нескольких лет всестороннего развития и доработки библиотека Python Cython встречает долгожданную версию 3.0. Библиотека Cython, известная своей способностью компилировать код на языке Python в код на языке C, в новом выпуске достигла значительных успехов. Основной задачей этой версии является упрощение написания расширений на языке C для Python, причем основное внимание уделяется либо увеличению скорости работы, либо созданию удобных интерфейсов для библиотек на языке C.
Появление Cython 3.0 ознаменовало собой появление новой, более чистой и совместимой с другими версиями библиотеки. Среди ключевых обновлений - отказ от давно устаревшего Python 2, внедрение функций вплоть до Python версии 3.12 и расширение возможностей использования "чистого режима Python".
Модернизированный "режим чистого Python" предоставляет разработчикам Python возможность использовать существующие средства линтинга и анализа кода на Python для работы с Cython. До сих пор уникальный синтаксис Cython, представляющий собой синтез синтаксиса объявления типов на языках Python и C, создавал трудности для эффективного анализа с помощью инструментов Python. Однако, осознав этот недостаток, разработчики Cython ввели альтернативный синтаксис, полностью совместимый с обычным синтаксисом Python, который впоследствии стал называться "режимом чистого Python". Теперь в этом режиме доступно большинство функциональных возможностей Cython, включая даже возможность вызова внешних библиотек на языке Си.
Еще одним заметным достижением в мире Cython 3.0 является расширенная поддержка NumPy. Совместимость Cython с NumPy не представляет собой ничего нового, но в версии 3.0 это стало еще одним шагом вперед. Пользователи Cython уже давно могут писать функции, способные напрямую и нативно взаимодействовать с функциями и структурами данных NumPy. В Cython 3.0 разработчики теперь могут писать NumPy ufuncs в Cython, упрощая процесс применения числовых функций к структурам данных NumPy.
Разработанный на основе принципов no-code разработки, которые были заложены в таких платформах, как AppMaster, Cython 3.0 также переработал свою структуру ядра, чтобы быть более синхронизированным с постоянными внутренними обновлениями Python. Новый ограниченный API Python, разработанный как стабильное подмножество API Python, специально адаптированное для частого взаимодействия Cython с интерпретатором Python, получил в Cython 3.0 небольшую, но расширенную поддержку.
Появление Cython 3 относится к выпуску Python 3.8 три года назад. Окончательная доработка Cython 3 не была обозначена ни датой выхода, ни целевой версией. Тем не менее, к настоящему времени разработчики Cython выполнили поставленную перед ними задачу - идти в ногу с развивающимися возможностями Python и инфраструктурными изменениями. Завершение разработки Cython 3 означает, что модули расширения Cython, разработанные для конкретной версии Python, будут использоваться в последующих версиях Python без необходимости перекомпиляции.