Как принять участие в разработке

Общая информация

Исходный код pymorphy2 распространяется по лицензии MIT и доступен на github: https://github.com/kmike/pymorphy2

Баг-трекер: https://github.com/kmike/pymorphy2/issues. Для общения можно использовать гугл-группу (есть какие-то идеи, предложения, замечания - пишите).

Если вы хотите улучшить код pymorphy2 - может быть полезным ознакомиться с разделом Внутреннее устройство.

pymorphy2 работает под Python 2.x и 3.x без использования утилиты 2to3; написание такого кода, по опыту, оказывается не сложнее написания кода просто под 2.х, но поначалу требует некоторой внимательности и осторожности. Пожалуйста, пишите и запускайте тесты, если что-то меняете.

Улучшать можно не только код - улучшения в документации, идеи и сообщения об ошибках тоже очень ценны.

Словари

Поддержка русского языка в pymorphy2 основывается на словарях из OpenCorpora и использует наборы текстов оттуда для автоматического тестирования и замеров скорости; в будущем планируется также использовать размеченный корпус для снятия неоднозначности разбора, ну и вцелом это классный проект. Любая помощь OpenCorpora - это вклад и в pymorphy2.

Экспериментальный украинский словарь корнями уходит в проект LanguageTool; отдельно он доступен тут: https://github.com/arysin/dict_uk, скрипты для преобразования в формат OpenCorpora - тут: https://github.com/dchaplinsky/LT2OpenCorpora.

Все словари преобразуются в формат pymorphy2 скриптами отсюда: https://github.com/kmike/pymorphy2-dicts

Тестирование

Тесты лежат в папке tests. При написании тестов используется pytest. Для их запуска используется утилита tox, которая позволяет выполнять тесты для нескольких интерпретаторов питона.

Для запуска тестов установите tox через pip:

pip install tox

и выполните

tox

из папки с исходным кодом.

Замеры скорости работы

Код для бенчмарков лежит в папке benchmarks. Для запуска тестов производительности выполните

tox -c bench.ini

из папки с исходным кодом pymorphy2.