[devel] Падающий гейсер

Igor Zubkov igor.zubkov на gmail.com
Пн Дек 7 21:50:14 MSK 2020


вс, 6 дек. 2020 г. в 16:31, Mikhail Novosyolov <mikhailnov at altlinux.org>:
> Скажите, наладится ли когда-нибудь работа Гейсера (packages.altlinux.org)?

Боюсь что уже никогда.

> Он в последнее время настолько часто тормозит или выдает ошибки, что возникают сомнения, стоит ли пытаться туда зайти.
>
> Также было бы неплохо более оперативно обновлять информацию в нем.

О том что такое будет, можно было догадаться уже с первых PR которые
новый разработчик начал присылать мне, а потом сдулся.

Давайте посмотрим на первый PR:
https://github.com/biow0lf/prometheus2.0/pull/340/files

lib/extensions.rb -- манкипатч на activerecord что бы работал .or на
relation. Как пример, User.where(id: 1).or(User.where(id: 2)). Всё бы
ничего, но вот тут тред на stackoverflow в котором этот код лежит
(ложно было бы ссылку в код закинуть) --
https://stackoverflow.com/questions/40742078/relation-passed-to-or-must-be-structurally-compatible-incompatible-values-r

И да, этот код не рабочий. Rails специально не даёт такого сделать для
relation в которых структура SQL разная. Пример, User.where(id:
1).or(User.where(id: 2).joins(:posts)). С этим патчем этот код
работает, но лучше бы не работал.

Потом добавляется full text search через postgres (pg_search_scope),
но без индексов.

Ну и на закуску, singleton_class.send...

Это помойка, усложнение кода и просто добавление багов.

Там ещё пару таких PR есть.

Я не хочу сказать что мой код отличный, нет. Он просто ужас и его надо
было рефакторить. Он был написан когда я учил rails. :)

Могу только предложить prometheus3 с платной подпиской через patreon.
А этот код выкиньте и перестаньте жаловаться.

P.S.: А ещё, разработчики которые приходят в чужой репозиторий и
пытаются пропихнуть другой шаблонный движок, не делаете так.


Подробная информация о списке рассылки Devel