Twisted
Twisted — это сетевой фреймворк, написанный на Python. Он поддерживает множество протоколов, имеет модули для создания web-серверов, чат-клиентов и серверов, почтовых серверов, ssh-серверов и т. д.
Twisted состоит из подпроектов, каждый из которых развивается относительно самостоятельно. Здесь можно найти их список.
Twisted лицензирован под MIT Free Software licence.
Особенности сборки Twisted в Сизифе
Twisted разбит на модули-составляющие и два псевдопакета.
Модули twisted:
- python-module-twisted-core-doc — Documentation for Twisted Core
- python-module-twisted-core-test — Unit tests for Twisted Core
- python-module-twisted-lore — Twisted documentation system
- python-module-twisted-mail — A Twisted Mail library, server and client
- python-module-twisted-names — A Twisted DNS implementation
- python-module-twisted-news — Twisted News is an NNTP server and programming library
- python-module-twisted-runner — Twisted Runner process management library and inetd replacement
- python-module-twisted-web2 — Twisted HTTP/1.1 Server Framework, programmable in Python
- python-module-twisted-words — Twisted Words contains Instant Messaging implementations
- python-module-twisted-core — An asynchronous networking framework written in Python
- python-module-twisted-conch — Twisted SSHv2 implementation
- python-module-twisted-web — Twisted web server, programmable in Python
Псевдо пакеты:
- python-module-twisted
- python-module-twisted-mini
Структура модулей в точности повторяет структуру подпроектов Twisted, за исключением проекта TwistedСore, который разбит на три части:
- python-module-twisted-core-doc
- python-module-twisted-core-test
- python-module-twisted-core
Разработчики Twisted включают в свой фреймворк и GUI-утилиты, что создаёт некоторые неудобства: владельцы серверов, устанавливающие twisted ругаются на то, что он вытягивает за собой GUI-библиотеки и прочий ненужный на сервере софт. Неплохо бы выделить эти утилиты в отдельный под-проект, или научить наш rpm «мягким» зависимостям, но это задача для светлого будущего, а пока — от всех пакетов, включающих GUI-утилиты и как следствие тянущих за собой по зависимостям GUI-библиотеки, эти зависимости отключены. Два вышеупомянутых псевдопакета предназначены для варьирования типов установки twisted.
- python-module-twisted-mini установит Twisted без зависимостей для работы с GUI.
- python-module-twisted — это полная установка.
Итак, у вас три варианта: установить отдельные пакеты twisted, установить python-module-twisted-mini и получить «серверный» набор или «десктопный» вариант python-module-twisted.