FastAPI - говно. И вот почему я не буду использовать его в будущих проектах.
1. У него 100% test-coverage. Но это не отменяет существования багов, PR с фиксами для которых даже не мерджаться и на них 0 реакции от мейнтейнеров (#9928).
2. У него закрыты issues. При создании issue просто написана плашка, что если у вас нет персонального разрешения от великого и ужасного tiangolo то вам писать сюда запрещено. Идите на github discussions.
3. Идём на github discussions, создаём дискашн. При создании дискашна прекрасная кнопочка - создавая этот дискашн я подтверждаю что помогу ответами в 3х других дискашнах. Пока не нажмёшь - дискашн не создасться. Ну ладно, жмём, создаём. И... получаем 0 реакции на нём. Хотя я описывал потенциальную проблему и даже предлагал для неё запилить PR, если мейнтейнеры отреагируют, но всё что я получил это 6 лайков от рандомных людей. (#11122)
4. Смотрим на release-notes по релизам и видим, что в самом фреймворке вообще ничего не меняется, кроме перевода документации на корейский и традиционный китайский. Конечно, он ведь настолько идеален, что осталось лишь перевести документацию. Багов ведь вообще нет, т.к. написано что в нём 100% покрытие тестами.
Мне регулярно приходят предложения от dependabot обновить fastapi и я уже 3 месяца их отклоняю. Ну потому что буквально ничего не меняется кроме добавления переводов, изменения списка спонсоров, обновления сторонних зависимостей и изредка ломания обратной совместимости.
5. Кстати говоря о спонсорах. tiangolo - создатель FastAPI и его можно проспонсировать от имени компании либо через github sponsors (аналог патреона). У него на данный момент там 170 спонсоров, я думаю что он спокойно делает пару тысяч баксов в месяц на своих проектах. А его "проекты" базово строятся на простой логике - берём существующую библиотеку (starlette/sqlalchemy) добавляем туда pydantic, пишем документацию и забиваем хуй на поддержку. Лутаем свой бабос особо не вкладываясь в поддежку, главное мерджить PR с переводами. А на issues можно не отвечать, ведь их создание просто закрыто. В дискашнах коммьюнити как нибудь само собой разберётся что да как.
Мне кажется что это паразитизм. С одной стороны да, он ничего не обязан коммьюнити. Но с другой - тебя спонсируют чтобы у тебя была возможность продолжать работу над продуктом.
Поэтому я отдам свои 5$ в месяц кому-нибудь другому и не буду использовать fastapi в будущих проектах. Вам тоже не советую использовать проекты от этого гениального автора.
1. У него 100% test-coverage. Но это не отменяет существования багов, PR с фиксами для которых даже не мерджаться и на них 0 реакции от мейнтейнеров (#9928).
2. У него закрыты issues. При создании issue просто написана плашка, что если у вас нет персонального разрешения от великого и ужасного tiangolo то вам писать сюда запрещено. Идите на github discussions.
3. Идём на github discussions, создаём дискашн. При создании дискашна прекрасная кнопочка - создавая этот дискашн я подтверждаю что помогу ответами в 3х других дискашнах. Пока не нажмёшь - дискашн не создасться. Ну ладно, жмём, создаём. И... получаем 0 реакции на нём. Хотя я описывал потенциальную проблему и даже предлагал для неё запилить PR, если мейнтейнеры отреагируют, но всё что я получил это 6 лайков от рандомных людей. (#11122)
4. Смотрим на release-notes по релизам и видим, что в самом фреймворке вообще ничего не меняется, кроме перевода документации на корейский и традиционный китайский. Конечно, он ведь настолько идеален, что осталось лишь перевести документацию. Багов ведь вообще нет, т.к. написано что в нём 100% покрытие тестами.
Мне регулярно приходят предложения от dependabot обновить fastapi и я уже 3 месяца их отклоняю. Ну потому что буквально ничего не меняется кроме добавления переводов, изменения списка спонсоров, обновления сторонних зависимостей и изредка ломания обратной совместимости.
5. Кстати говоря о спонсорах. tiangolo - создатель FastAPI и его можно проспонсировать от имени компании либо через github sponsors (аналог патреона). У него на данный момент там 170 спонсоров, я думаю что он спокойно делает пару тысяч баксов в месяц на своих проектах. А его "проекты" базово строятся на простой логике - берём существующую библиотеку (starlette/sqlalchemy) добавляем туда pydantic, пишем документацию и забиваем хуй на поддержку. Лутаем свой бабос особо не вкладываясь в поддежку, главное мерджить PR с переводами. А на issues можно не отвечать, ведь их создание просто закрыто. В дискашнах коммьюнити как нибудь само собой разберётся что да как.
Мне кажется что это паразитизм. С одной стороны да, он ничего не обязан коммьюнити. Но с другой - тебя спонсируют чтобы у тебя была возможность продолжать работу над продуктом.
Поэтому я отдам свои 5$ в месяц кому-нибудь другому и не буду использовать fastapi в будущих проектах. Вам тоже не советую использовать проекты от этого гениального автора.