LINUX.ORG.RU

Thalassa 0.3.50

 , , thalassa,


0

4

Выпущена новая версия Thalassa CMS под номером 0.3.50.

В этой версии переписан фильтр HTML-тегов для комментариев.

Разработчиком CMS является Андрей Викторович Столяров, также известный как @Croco.

>>> Подробности



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 2)
Ответ на: комментарий от kaldeon

Нет.

Это какая ОС не написана на C/C++? Linux написан. Все BSD написаны. Макось написана. Windows написана, причём на том самом горячо нелюбимом местными экспертами C с классами, насколько я знаю, никакого STL, только свои велосипеды.

vbr ★★★★
()
Ответ на: комментарий от EvilFox

дед на самом деле трусливый, слабый и неуверенный

Не сказал бы. Достаточно уверенный в себе человек. Понравилось его интервью у ИТ Бороды.

иначе объяснить премодерацию на его ресурсе невозможно

А премодерация как-то принципиально по уровню свободословия отличается от постмодерации?

Ну например фильтр оскорблений, политики, национальных прижиганий и т.п.

rumgot ★★★★★
()
Ответ на: комментарий от gaylord

Да, поэтому добавлять к этому ещё и незакрытые баги как минимум странно.

По-моему это для каждого проекта индивидуально решается, потому что все равно на практике софт привязывается к каким-то версиям, одни баги закрываются, другие появляются. Не всегда баги критичны. В данном проекте криптография не применяется, поэтому не пофиг ли?

Ну разве что из-за сторонних библиотек удаленное выполнение кода вылезет, тогда автору придется самому срочно патчить. Или кому-то еще, раз код открытый.

Нормальные люди делают это через зависимости и чот ни у кого проблем нет.

Проблема есть, потому что, чтобы скачанная программа с первого раза скомпилировалась уже скорее исключение, чем правило. И хорошо если просто чего-то недоустановлено, а то трахайся с конфликтом версий.

praseodim ★★★★★
()
Ответ на: комментарий от kaldeon

Ну я про популярные. Понятно, что за 50 лет написали что угодно на чём угодно, принципиально-то всё оно тюринг-полное. Но вот популярные ОС как-то не взлетают ни на чём кроме C/C++, что лично я сам не понимаю, но факт есть факт. Rust кажется начинает немного прорываться, вроде в Windows какие-то отдельные компоненты на нём начали писать, ну и в Linux все знают, но пока это скорей эксперименты, хотя и многообещающие.

vbr ★★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от Zhbert

Для определения свободности софта можно пользоваться критериями FSF (тогда free software), OSI (тогда open source) или DFSG (тогда добро пожаловать в репозиторий Debian).

Проблема в том, что данная лицензия не пролезает ни в один из этих критериев. Это бесплатное ПО.

Aceler ★★★★★
()
Ответ на: комментарий от XOXO

Ну это не критерий, есть множество людей, которые не воспринимают «ОС» и «не Windows» в одном предложении.

Тем не менее, мы сейчас на сайте про такую ОС.

«Я за любой кипеж, кроме голодовки» (c) не моё

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)
Ответ на: комментарий от Aceler

Проблема в том, что данная лицензия не пролезает ни в один из этих критериев. Это бесплатное ПО.

Кстати, а не нарушает ли Столяров лицензию GPL? Вот прикол, если так. Потому что у него есть сторонние библиотеки как раз под GPL. Хотя он вроде бинарники не распространяет, но хз, что в итоге.

P.S. Четыре столлмановских свободы как будто есть в его лицензии. Но потом он наворотил чего. Если честно я вообще не совсем понял, что он требует своей лицензией. Вначале он рассуждает, что GPL не предусмотрела ситуацию, когда корпорации чрезмерно усложняют код так, что разобраться в нем становится невозможно без корпоративных ресурсов. Но что он против этого придумал я не понял.

praseodim ★★★★★
()
Последнее исправление: praseodim (всего исправлений: 1)
Ответ на: комментарий от praseodim

По-моему это для каждого проекта индивидуально решается, потому что все равно на практике софт привязывается к каким-то версиям, одни баги закрываются, другие появляются. Не всегда баги критичны. В данном проекте криптография не применяется, поэтому не пофиг ли?

Для этого есть патч-релизы, которые не ломают API/ABI.

Ну разве что из-за сторонних библиотек удаленное выполнение кода вылезет, тогда автору придется самому срочно патчить. Или кому-то еще, раз код открытый.

Да, но я сомневаюсь что он это трекает. Для JS/Go/Rust существуют автоматические сканеры, которые с утра орут тебе и мейнтейнерам ААААА У ТЕБЯ ДЫРА В ЗАВИСИМОСТЯХ ПОЧИНИ ПОЧИНИ ПОЧИНИ. Для любовно сложенной в папочке зависимости такого, увы, нет.

Проблема есть, потому что, чтобы скачанная программа с первого раза скомпилировалась уже скорее исключение, чем правило. И хорошо если просто чего-то недоустановлено, а то трахайся с конфликтом версий.

Поэтому языки притащили свои пакетные менеджеры и своим завимости. Но Столяров про это не знает и вендорит руками. Ну это же правда профессиональная импотенция.

gaylord
()
Ответ на: комментарий от praseodim

Не заглядывал в код, но если да, то нарушает, GPL явно требует, чтобы весь код был под GPL или совместимой лицензией, дающей те же права. Если там LGPL, то не нарушает.

Aceler ★★★★★
()
Ответ на: комментарий от gaylord

Не вижу особой проблемы в том, чтобы накостылять обход файлов регулярным выражением. Мне кажется, даже если в SQLite это будет проще, то не намного. Файлы — это, в принципе, довольно простой и удобный интерфейс, если не уходить в крайности.

Хотя получить хранение и поиск как одно целое — это явное преимущество, признаю.

kaldeon
()
Последнее исправление: kaldeon (всего исправлений: 2)
Ответ на: комментарий от gaylord

Для этого есть патч-релизы, которые не ломают API/ABI.

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

Для любовно сложенной в папочке зависимости такого, увы, нет.

Для этого скиллы архитектора и нужны, чтобы решить, насколько оно необходимо в конкретной ситуации.

Поэтому языки притащили свои пакетные менеджеры и своим завимости.

В итоге стали просто в докеры все пихать, чтобы разрулить эту туеву хучу зависимостей, которые сидят на зависимостях и погоняют зависимостями. Кстати, а как исправлением CVE, если все в докер засунуто? По-моему никак, если автор докера не удосужится его переделать. Или надо влезать внутрь докера, что не всегда тривиально.

praseodim ★★★★★
()
Ответ на: комментарий от vbr

Столяров видимо может сделать что угодно, в любом случае, в твоих глазах это гениальнейший человек, который не занимается чем то странным, а просто настолько превозвышен что дела и ощущения обычного люда его не касаются.

Но если взглянуть на реальность?

CMS не пользуется популярностью, не отвечает запросам пользователей, содержит опасные уязвимости, не догоняет по возможностям даже самые отсталые из популярных используемых решений. Его стиль программирование который вы тут обсуждаете, привел его к этим проблемам.

Из того что можно выделить, он сделал сайт который не требует JavaScript, и с малым количеством зависимостей, хотя видимо прибитый к UNIX. Может ли это сделать обычный пхп жуниор? Да. Си жуниор? А почему нет?

MOPKOBKA ★★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 2)
Ответ на: комментарий от vbr

inifile каталог например. Хотя не обратил внимание сразу, что Столяров же и автор. Как автор он вряд ли сам у себя GPL нарушает. Хотя пользователи уже не уверен, лол коллизия юридическая.

praseodim ★★★★★
()
Последнее исправление: praseodim (всего исправлений: 1)
Ответ на: комментарий от kaldeon

Не вижу особой проблемы в том, чтобы накостылять обход файлов регулярным выражением. Мне кажется, даже если в SQLite это будет проще, то не намного. Файлы — это, в принципе, довольно простой и удобный интерфейс, если не уходить в крайности.

Все так, но sqlite настолько удобная и надежная штука, что надо очень хорошо оправдывать ручную базу данных. Я понимаю что это проект и кто я такой чтобы ему мешать, но кажется учить программистов не использовать хорошие решения, а вместого этого заново изобретать велосипед… ну такое.

gaylord
()
Ответ на: комментарий от praseodim

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

Соглашусь, поэтому важно выбирать библиотеки. И вот это навык, которому хорошо бы учить: как выбирать, по каким критериям отсеивать, на что обращать внимание.

Для этого скиллы архитектора и нужны, чтобы решить, насколько оно необходимо в конкретной ситуации.

Ага. И он этому не учит, он просто учит «пишите все сами ведь все остальные дебилы». Это плохой совет, объективно.

В итоге стали просто в докеры все пихать, чтобы разрулить эту туеву хучу зависимостей, которые сидят на зависимостях и погоняют зависимостями. Кстати, а как исправлением CVE, если все в докер засунуто? По-моему никак, если автор докера не удосужится его переделать. Или надо влезать внутрь докера, что не всегда тривиально.

Да, все так. Поэтому я не очень люблю bundle софта в докерах.

gaylord
()
Ответ на: комментарий от gaylord

Ага. И он этому не учит, он просто учит «пишите все сами ведь все остальные дебилы». Это плохой совет, объективно.

Автор SQLite близок к этому, но у него в отличие от Столярова есть чему поучиться, и он этот подход реализует хорошо.

MOPKOBKA ★★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 1)
Ответ на: комментарий от gaylord

Все так, но sqlite настолько удобная и надежная штука, что надо очень хорошо оправдывать ручную базу данных.

Я тоже не пойму, почему ее не использовать, она и придумана была под подобные ситуации. С другой стороны, файловая система сама по себе тоже база данных. Иерархическая.

Сам автор говорил, что ему тупо проще файлы, а с sql он всегда может забыть какими командами работать, бекапить и т.д.

Мне кажется, что у Столярова ярко выражено желание все контролировать. Файлы он контролирует, а с БД он уже делегирует сторонней программе работу с его данными. Отсюда же и Си с классами и неприятие сборщика мусора и тп.

praseodim ★★★★★
()
Ответ на: комментарий от MOPKOBKA

Столяров видимо может сделать что угодно, в любом случае, в твоих глазах это гениальнейший человек, который не занимается чем то странным, а просто настолько превозвышен что дела и ощущения обычного люда его не касаются.

Столяров в моих глазах это человек, написавший книги по методике, которая, опять же на моих глазах и вокруг меня вырастила около десятка людей, ставших программистами.

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

Поэтому когда кто-то спрашивает, как ему научиться программировать, я ему рекомендую эти книги. Потому, что эта методика проверена и работает.

Я не согласен со многими его взглядами и даже многие из тех, с которыми в теории согласен, на практике считаю оторванными от жизни и малоприменимыми на практике, если не сказать «вредными». Я сижу в браузере со включенным жаваскриптом, в компьютере от эппл. Поэтому меня надо, цитируя его «Макбуки и вообще всё, что делает Apple, об асфальт, а лучше об тупые головы тех, кто считает возможным всё это покупать и одну из самых вредоносных корпораций мира поддерживать деньгами».

Тем не менее это всё не отменяет пользы его книг.

CMS не пользуется популярностью, не отвечает запросам пользователей, содержит опасные уязвимости, не догоняет по возможностям даже самые отсталые из популярных используемых решений. Его стиль программирование который вы тут обсуждаете, привел его к этим проблемам.

Честно говоря даже комментировать лень. В этом абзаце всё бредовое. Ну кроме популярности. При чём тут стиль программирования и то, что он не знал, что нужно фильтровать больше атрибутов? Если бы он писал на бейсике, бейсик бы ему подсказал, что надо фильтровать больше атрибутов или что?

Из того что можно выделить, он сделал сайт который не требует JavaScript, и с малым количеством зависимостей, хотя видимо прибитый к UNIX. Может ли это сделать обычный пхп жуниор? Да. Си жуниор? А почему нет?

Конечно может. Я вот своё ядро операционной системы писал, будучи си жуниором. И форум на перле писал сто лет назад, будучи перл жуниором, и им даже пользовались пара десятков человек некоторое время. К чему это всё? Любой жуниор может написать любой софт. Законы вселенной этого не запрещают.

vbr ★★★★
()
Ответ на: комментарий от praseodim

Там вроде LGPL, я в этом не особо разбираюсь, но интернет говорит, что LGPL не вирусная, даже при статической линковке. Ну и, да, он, как автор, нарушать вряд ли что-то может.

vbr ★★★★
()
Ответ на: комментарий от vbr

При чём тут стиль программирования и то, что он не знал, что нужно фильтровать больше атрибутов

При том, что человек претендует на экспертность, а делает ошибки джуна. И ты прав, мы все делаем ошибки. Поэтому профессионала отличает именно способность их ловить ДО того, как их поймают пользователи. А именно – читаемым кодом (отсутствует), peer review (отсутствует) и тестированием (тоже отсутствует).

gaylord
()
Ответ на: комментарий от gaylord

Почитал пару файлов, код прекрасно читаем.

static int hexdigvalue(int c)
{
    if(c >= '0' && c <= '9')
        return c - '0';
    if(c >= 'a' && c <= 'f')
        return c - 'a' + 10;
    if(c >= 'A' && c <= 'F')
        return c - 'A' + 10;
    return -1;
}

Я бы лучше не написал.

vbr ★★★★
()
Последнее исправление: vbr (всего исправлений: 1)
Ответ на: комментарий от kaldeon

Просто либо запрещают HTML в user generated input (путем замены <> на html сущности, а также амперсандов и кавычек, чтобы наверняка), а если нужно форматирование, используют своё (markdown, bbcode или совсем своё) не содержащее ничего лишнего. Либо делают белый список и тегов, и их атрибутов. Потому что делать всякое странное и одними атрибутами уже было можно пару десятилетий или сколько там существует CSS.

Попытка фильтровать html не по белому, а по чёрному списку заведомо попытка обьять необъятное - новые теги и атрибуты появляются регулярно, а браузеры очень терпимы к ошибкам и противоречиям в коде.

В целом это очевидно любому, кто знает html хотя бы на среднем уровне. Столяров - не знает.

KivApple ★★★★★
()
Последнее исправление: KivApple (всего исправлений: 4)
Ответ на: комментарий от vbr

Столяров в моих глазах это человек, написавший книги по методике, которая, опять же на моих глазах и вокруг меня вырастила около десятка людей, ставших программистами.

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

При чём тут стиль программирования и то, что он не знал, что нужно фильтровать больше атрибутов?

Ну так это явно исходит из его стиля, он мог бы изучить существующие решения, их подход. Он мог бы изучить современные инструменты которые бы не позволили ему пропустить такие ошибки в релиз. Он мог бы изучить html в конце концов, но это выше его понятий о прекрасном, поэтому он просто игнорирует существование современных браузеров, думаю от части из за того, что ничего полезного и реально применяемого он не пишет уже очень давно как выяснилось.

Конечно может. Я вот своё ядро операционной системы писал, будучи си жуниором.

К тому что он не делает чего то нового и полезного, а лишь дает плохие советы и пишет код уровня стажера. Ты просто пишешь что критика необоснованно и все субъективно, столяров пишет алгоритм=программирует а какой результат на выходе не особо и важно, и работает ли он вообще.

MOPKOBKA ★★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 3)
Ответ на: комментарий от vbr

Во-первых, это явно не тот код который стоит обсуждения, это просто сравнение по табличке. Во-вторых… господи, он свой isxdigit написал? Зачем?

gaylord
()
Ответ на: комментарий от praseodim

Четыре столлмановских свободы как будто есть в его лицензии.

Нет их. Четыре столлмановских свободы предполагают отсутствие ограничений, а тут «организациям нельзя».

Aceler ★★★★★
()
Ответ на: комментарий от vbr

При чём тут стиль программирования и то, что он не знал, что нужно фильтровать больше атрибутов?

Это неизбежная ошибка, если презрительно относиться ко всему новому и изобретать велосипеды по этой причине.

Можно использовать готовые решения. Можно изобретать велосипеды от любви к искусству, поглядывая готовые решения «а как другие делают?».

А можно относиться ко всему кроме своего кода и технологий 20 летней давности по принципу «не читал, но осуждаю».

И вот в последнем случае такие ошибки будут просто неизбежны.

Это как принципиально выходить на улицу только с завязанными глазами, уповая на свои воспоминания о том, что там было раньше и на свои фантазии о том, что там должно быть. Столкновение со столбом или падение в канаву неизбежно.

KivApple ★★★★★
()
Ответ на: комментарий от KivApple

Это как принципиально выходить на улицу только с завязанными глазами, уповая на свои воспоминания о том, что там было раньше и на свои фантазии о том, что там должно быть. Столкновение со столбом или падение в канаву неизбежно.

Напишу на стене в офисе, ей богу.

gaylord
()
Ответ на: комментарий от KivApple

Попытка фильтровать html не по белому, а по чёрному списку заведомо попытка обьять необъятное - новые теги и атрибуты появляются регулярно, а браузеры очень терпимы к ошибкам и противоречиям в коде.

Там ещё и ЧЕРНЫЙ список? О г-ди.

gaylord
()
Ответ на: комментарий от praseodim

чтобы скачанная программа с первого раза скомпилировалась уже скорее исключение

Проблемы красноглазиков никого кроме красноглазиков не волнуют. Нормальные люди используют пакетные менеджеры и без проблем собирают что угодно. Конечно если это написано прямыми руками, а не как у столярика.

zabbal ★★★★★
()
Ответ на: комментарий от gaylord

он свой isxdigit написал? Зачем?

Скорее всего потому что тупо не знал о его существовании.

zabbal ★★★★★
()
Ответ на: комментарий от KivApple

Он давно говорил (смотреть последний пункт), что планирует сделать поддержку bbcode или простенькую версию wiki, а также редактирование страниц через веб интерфейс и т.д.

Кроме этого у него большой список планов, который он потихоньку реализует, параллельно с другими проектами (новое издание книги, видеоблог табличек, fedanet, генератор табличек, программа для бухучета с поддержкой латеха и другие). Думаю, пока вставка html-тэгов нужна как временное решение, пока он занят другими делами, а когда появится bbcode это все станет не так нужно.

rOgret
()
Ответ на: комментарий от EvilFox

Ну, для справедливости сказать на stolyarov.info и infoviolence.org ссылки на валидаторы есть. А насчёт thalassa.croco.net на вашем месте я бы сообщил о таких оплошностях автору, а не плевался бы желчью на стороннем ресурсе.

Zeev
() автор топика
Ответ на: комментарий от rOgret

Когда он все это наконец напишет, про bbcode никто уже не вспомнит. Я уже, честно говоря, не помню как он выглядит. Везде md и другие разметки кажутся избыточными.

gaylord
()
Ответ на: комментарий от gaylord

не сделаны базовые вещи вроде написания постов UI

Автору не нужно.

ручная база данных на основе файлов на файловой системе

Автору нужно.

Проблемы?

Zeev
() автор топика
Ответ на: комментарий от Zeev

У меня нет претензий к программе, как таковой. Если автора устраивает, бога ради. У меня есть претензия к мифу о Столярове, мол человек хорошо преподает программирование, потому что знает о чем говорит. А на деле мы имеем малофункциональный генератор статических сайтов с детскими ошибками и полное игнорирование best practices, к которым индустрия шла с таким трудом.

gaylord
()
Ответ на: комментарий от gaylord

И что? Это не коммерческая программа, чтобы соотвествовать всем «best practices» с целью качественно выполнить ТЗ или удачно продать. Это буквально проекта изначально для одного пользователя выложенный в публичный доступ с открытым исходным кодов. У вас есть дополнения, идеи или исправления вы можете отправить их автору.

Zeev
() автор топика
Ответ на: комментарий от Zeev

Мне не интересна судьба Thalassa CMS. Я пишу только о том, что рекомендовать автора, пишущего ТАКОЕ, не стоит. Он самовлюбленный и некомпетентный.

gaylord
()
Ответ на: комментарий от guyvernk

Конкретно на этой странице не читал, но читал в других местах, что он из себя представляет я понимаю.

EvilFox ★★
()
Ответ на: комментарий от gaylord

Какое это имеет отношение к качеству выпускаемых авторов сабджа учебных материалов?

Zeev
() автор топика
Ответ на: комментарий от Zeev

Речь не о том нравится или нет. Речь о компетентности и адекватности state-of-the-art. Ни того, ни другого, автор не продемонстрировал.

gaylord
()
Ответ на: комментарий от gaylord

То, что автор обладает огромным опытов в разработке и преподавании — факт, который глупо отрицать. Сабдж отношения к этому не имеет, так как никогда и не задумывался, как объект демонстрации личных навыков. Определение термина «адекватность», как таковое — растяжимо и не имеет отношения к вопросу.

Zeev
() автор топика
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.