Поведение никогда не будет соответсвовать корпусу на 100%, т.к.
- библиотека должна оставаться компактной,
- библиотека не предназначена для имён собственных, хоть и может с горем пополам их обрабатывать,
- корпус сам по себе может содержать нерегулярности.
Основные тесты не могут быть включены в release
из-за лицензии корпуса.
Вместо них, тут есть простые тесты, где проверяется в основном API
и некоторые конкретные случаи (например, упоминающиеся в README).
Простота поддержки важнее компактности кода.
Внося изменения в этот репозиторий через pull-реквесты, вы гарантируете:
- Вы являетесь автором кода.
- Вы публикуете его на условиях лицензии MIT.
Если же нужно перетащить сторонний код под лицензией MIT или другой пермиссивной лицензией, лучше открыть Issue, где можно будет обсудить, как сохранить указание авторства.
Приветствуются указания на статьи и книги.
С чужим кодом может возникнуть ситуация, когда автор не хочет ассоциироваться с этой библиотекой. Видел, в некоторых библиотеках делают копирайты у отдельных фрагментов кода.
Алгоритм внесения изменений:
- форкаем репозиторий
- клонируем на локальную машину
- переходим в ветку
dev
- запускаем
ruby serve-with-ruby.rb
- проверяются текущие результаты по адресу
http://localhost:9090/testing.html
- правка вносится в файл
js/RussianNouns.js
(нужно добавить свой копирайт, если его еще нет) - запускается
check.sh
(он должен отработать без ошибок) — будет сгенерированjs/RussianNouns.min.js
- проверяются новые результаты по адресу
http://localhost:9090/testing.html
- если результаты стали сильно лучше, пушим в
dev
своего репозитория; иначе возвращаемся к шагу 6 - делаем пулл реквест из своего
dev
в мойdev
- копируем на локальной машине
js/RussianNouns.js
иjs/RussianNouns.min.js
в какую-то другую папку - переключаемся в ветку
release
- перезаписываем
RussianNouns.js
иRussianNouns.min.js
своей новой версией npm test
должен отработать без ошибок; иначе выясняем в чем проблема, и если это не связано с устареванием API в тесте, переходим снова вdev
и возвращаемся к шагу 6- коммитим, пушим, делаем пулл-реквест (по названию должно быть понятно, что два пулл-реквеста связаны)