Loading...
Normal, Gallery, Tree

Нитка новин, запитів про можливості та звітів про хиби №27

Двадцять шоста: >>71241
Replies: >>79078
Ну ты рак, для кого режимы загрузки сделали? Ещё и прошлый тред не утопил.
>>75503
Сам ты из сраки. Сервер в Украине, понятно что рашкосайты не работают.
Replies: >>75506
>>75504
Чому я в Україні і в мене все працює? Може, в тебе все ж руки зі сраки?
Replies: >>75551
>>75506
У меня в браузере тоже работает. Но сервер неборды-то не в браузере.
Replies: >>75555
>>75546
Done. Полноэкранное видео к сожалению пока не знаю как сделать монохромным, может вообще не получится.
>>75551
Чим бравзер особливий?
Replies: >>75556
>>75555
У него есть аддон который управляет проксями. А борда ходит напрямую.
Replies: >>75557
>>75556
Чом до бірди підтримку проксиків не приробити?
Replies: >>75559
>>75557
Прироби. Меня поддержка яндекса не очень волнует, другое дело – поддержка тора. Но мне лень
Что ж никто не напомнил что надо перенести rss-сорс в новый тред?
Replies: >>75592
Make everything inside monochrome post monochrome
boards/static/css/base.css
One inclusion tag for any posting form rendering
boards/templates/boards/all_threads.html
boards/templates/boards/form.html
boards/templates/boards/thread_normal.html
boards/templatetags/board.py
boards/views/all_threads.py
boards/views/mixins.py
boards/views/thread/normal.py
Replies: >>75581
>>75580
Сим я делаю задел на постинг снаружи треда. Теперь можно будет придумывать, где бы отрисовать эту форму (или возможно её мини-версию), чтобы что-нибудь запостить и куда-то после этого перейти (куда, в тред в который ты не хотел заходить?).
Replies: >>75595
Properly handle tag without aliases (though don't know how this can happen)
boards/models/tag.py
Вот так борда выглядела когда-то давно. К сожалению, скриншотов самой-самой первой зелёной версии уже не сохранилось. Но желающие могут попробовать развернуть из первых коммитов (впрочем, я не уверен, что этот говнокод легко поднимется).
Replies: >>75596
>>75577
Чому ти це не автоматизував?
Replies: >>75594
>>75592
А как он узнает, где новый тред? У нас к перекатам подходят творчески, и нет никакого критерия, который позволяет понять, куда перенести загрузку. В нацполе вон даже живые люди не могут разобраться, какой из десятка перекатов легитимный.
Replies: >>75597
>>75581
>куда-то после этого перейти
Нащо? Просто освіжувати ґлаґне.
>>75583
А нащо ти лічильник ґетів прибрав?
Replies: >>75598
>>75594
От хай бот і визначає, котрий легітимний. Люди дурні, люди не можуть.
Replies: >>75599, >>75633
>>75596
С ростом борды геты начинают появляться всё реже и реже, а гонять расчёты на каждое сообщение ради того, что одно из десятка тысяч окажется гетом - нерационально. Особенно это теряет смысл для децентрилизованной борды, где у каждого узла своя внутренняя нумерация постов.
>>75597
Давай критерии.
Replies: >>75614
Added form reset
boards/static/js/form.js
boards/static/js/thread.js
boards/templates/boards/form.html
>>75599
Бити піцт на слова, тригеритися, якщо якесь ближче 3-х до "перекіт" за Левенштейном, шукати посилання на ОП, писати віднині у нього.
Replies: >>75625
>>75614
А если два переката?
Replies: >>75630
>>75625
Брати перший-ліпший.
Replies: >>75632
>>75630
Не всегда первый перекат более легитимный.
Вот как буду прикручивать нейросети, тогда и запилю и модерацию, и перекаты, и вообще всё с помощью роботов. Будешь им жаловаться, что тебя забанили за флуд стикерами.
Replies: >>75633
>>75632
>Не всегда первый перекат более легитимный
>>75597
Removed unused mixin. Refactored paginator a bit
boards/abstracts/paginator.py
boards/views/all_threads.py
boards/views/mixins.py
boards/views/thread/normal.py
Don't check perms for every post moderation action
boards/templates/boards/base.html
boards/templates/boards/post.html
Don't query for body in moderation menu
boards/templates/boards/post.html
Мне нужен более свежий взгляд. Кто часто пользуется бордой, скажите, насколько быстро она работает? Все мои последние оптимизации дают хоть какой-то результат?
Варианты ответа:
1) Всегда было реактивно
2) Всегда тормозило и сейчас тормозит
3) В последнее время стало быстрее
Пока опрос касается только просмотра, о постинге поговорим позже.
Replies: >>75691, >>75751, >>75794
>>75686
>1 Всегда было реактивно
Replies: >>75749
>>75691
О, вибачмакаче, де там твій обіцяний вбивця ЛьОРу?
>>75686
Ти йобнувся? Що має лаґати на бірді з серверним рендеринґом? Нє, може, усякі ґіґабітники щось помічають, але тоді я навіть участь у опитуванні не братиму.
Replies: >>75752
>>75751
Ну лично мне кажется, что сервер долго рендерит иногда. Поэтому я последний месяц оптимизирую всё подряд, экономлю на спичках.
Replies: >>79290
>>75686
Ну, меня скорость устраивает, так что каких-то проблем не вижу. Будут сотни людей, тогда и поговорим :)
Replies: >>75827
>>75794
Дело в том, что я не хотел звать сотни людей, пока тут каждый чих тормозит. В прошлый лоронаплыв были на это жалобы. А сейчас вот можно.
Может даже как-нибудь соберусь и проплачу рекламу на каком-нибудь говне типа инстаграма.
Replies: >>75833, >>75834
Refactored format panel building
boards/forms/__init__.py
Moved moderation panel completely to javascript, which will use one menu for all posts instead of a new one for each loaded
boards/locale/ru/LC_MESSAGES/django.mo
boards/locale/ru/LC_MESSAGES/django.po
boards/locale/ru/LC_MESSAGES/djangojs.mo
boards/locale/ru/LC_MESSAGES/djangojs.po
boards/locale/uk/LC_MESSAGES/django.mo
boards/locale/uk/LC_MESSAGES/django.po
boards/locale/uk/LC_MESSAGES/djangojs.mo
boards/locale/uk/LC_MESSAGES/djangojs.po
boards/models/post/__init__.py
boards/static/js/main.js
boards/templates/boards/post.html
>>75827
Гм, а нащо бірда аудиторії гістограму?
>>75827
>В прошлый лоронаплыв были на это жалобы
Гадаю, проблема скоріш у вузенькому вихідному каналі.
Replies: >>75835
>>75834
Канал тут очень хороший. Проблема именно в производительности сервера, на большом количестве людей они становятся в большую очередь, чтобы обслужиться.
Replies: >>75850
Removed redundant viewers code
boards/models/attachment/viewers.py
>>75835
Скільки там, ґіґабіт хоч є? А тепер порахуй — припустімо, сторінка в тебе генерується миттєво, але передається з усім контентом десь 125 МБ ÷ 5 МБ = 0.04 мс. І тут до тебе влізло більше двадцяти користувачів і починають одночасно вантажити пічкурі (а нащо ще іміджбірда потрібна, як не повнорозмірні пічкури дивитися). Здогадуєшся, що буде, коли ця цихра перевершується у кілька разів?
Replies: >>75852
>>75850
>І тут до тебе влізло більше двадцяти користувачів і починають одночасно вантажити пічкурі
Чо, все одновременно в полном размере? Как они это сделают, если интерфейс не позволяет? К тому же уже загруженные второй раз грузиться не будут, их браузер кэширует.
Replies: >>75862, >>75863
>>75852
>интерфейс не позволяет
Що ти верзеш, телепню?
>>75852
>уже загруженные второй раз грузиться не будут
Це стікери хіба шо.
Replies: >>75865
>>75863
Ты сидишь в пределах пары тредов, если ты его раз открыл, то его картинки сохранились. При последующих заходах будут загружаться только свежие.
Replies: >>75894
Немного интересной статистики борды.
Replies: >>75895
>>75865
>его картинки сохранились
Я про повнорозмірні, а не про мініатюри. Багато хто дивиться повнорозмірні кілька разів поспіль?
Replies: >>75902
>>75886
Це за який період?
Replies: >>75900
>>75895
Неделя.
Replies: >>75903
>>75894
А много кто смотрит абсолютно все картинки в полном размере?
Replies: >>75906
>>75900
Забагато щось трафіку для одного тижня.
Replies: >>75905
@neko, а ти з робочої машини на бірду ходиш? Бо інакше виходить, що пищенка тут найактивніший користувач, хоча і варнякає, що лише до одної нитки ходить. На другому місці, безсумнівно, мій телефон.
Replies: >>76183
>>75903
По логам у нас полторы тыщи уников. Я не знаю, как он считает, как-то из логов nginx'а.
Replies: >>75908
>>75902
А чому абсолютні всі? Достатньо вантажити одну, щоб забити нею частку каналу.
Replies: >>75907
>>75906
Ну забьёшь ты часть на полсекунды. И чего?
Replies: >>75909
>>75905
Теж за тиждень?! Боти якісь, певне.
Replies: >>75914
>>75907
В тебе з математикою погано?
>>75908
>Боти якісь, певне.
Может быть, может быть. Но почему у них винда?
Replies: >>75928
>>75914
Маскуються під звичайного користувача, це ж очевидно.
Я тут немного поизвращался с настройками, так что ваши настройки избранных и скрытых тегов потерялись. Добавляйте их заново.
// Теперь это будет храниться в базе и теоретически быстрее доставаться.
Replies: >>75981
>>75979
PS Чуть позже туда же унесу избранные треды, после этого они должны заработать значительно быстрее чем сейчас.
Store user settings apart from session in the database
boards/abstracts/settingsmanager.py
boards/migrations/0069_usersettings.py
boards/models/user.py
boards/views/tag_threads.py
Hide quote button when its click. Cache its selector
boards/static/js/thread.js
Command to delete old user setting objects
boards/management/commands/cleansettings.py
boards/management/commands/cleantags.py
А от навіщо тут взагалі нумерація постів, якщо рушій все одно підспудно трансформує їх в унікальні хеші? Може, ці хеші у якості ідентифікаторів поцтів і відображати?
Replies: >>76008
Починил вход для новых пользователей (без сессии), который был сломан предыдущими коммитами.
Replies: >>76014
>>76002
>рушій все одно підспудно трансформує їх в унікальні хеші
Какие именно? У постов есть несколько видов нумерации, в том числе хэшей. Они используются для разных целей. Если ты имеешь в виду те что в html, то это костыль для обновления треда, и больше нигде они не нужны.
Replies: >>76015
>>76007
Який вхід на анонімній бірді?!
Replies: >>76016
>>76008
>Какие именно?
Ті, що користаються для дзеркалювання і забезпечують незалежну нумерацію на різних дзеркалах.
Replies: >>76018
>>76014
Сессия.
Replies: >>76017
>>76016
І шо? Без старих сесійних кук бірда не вантажилася, чи що?
>>76015
Там не хэши, а комбинация из ключа авторского узла и локального номера на этом узле (того, который ты видишь в интерфейса).
Replies: >>76019, >>76020
>>76018
Тю, лайно якесь.
>>76018
Як це забезпечує зворотнє дзеркалювання взагалі?
Replies: >>76021
>>76020
Это что такое?
Replies: >>76023
>>76021
Це коли я віддзеркалив піцт, ти забираєш його назад і не додаєш новий, бо в тебе такий вже є.
Replies: >>76030
>>76023
У него тот же глобальный айдишник (мой ключ + тип ключа + локальный айдишник). Эта штука идёт не от того кто отдаёт пост, а от того кто его создал первоначально. Контент поста подписан этим ключом, и другой сервер не может его апдейтить.
New backend for fav threads. Now only last post ids are saved, no thread ids
boards/abstracts/settingsmanager.py
boards/context_processors.py
boards/models/thread.py
boards/views/api.py
boards/views/feed.py
Little simplifying for loading last posts
boards/abstracts/settingsmanager.py
Some comments to the settings manager
boards/abstracts/settingsmanager.py
Fixed building post refmaps
boards/models/post/__init__.py
Fixed parsing tag link inside a post
boards/mdx_neboard.py
Added robots.txt
boards/templates/boards/robots.txt
boards/urls.py
Order fav threads in list
boards/abstracts/settingsmanager.py
>>75904
С какой именно? Той где винда – не хожу, она у меня больше для игр. С андроида хожу очень редко.
Тут интереснее всего, что такое Unix-like. Кто-то ходит с фряхи?
Replies: >>76251
Version bump
boards/config/default_settings.ini
Added tag 4.9.0 for changeset 1c30df471d2d
.hgtags
>>76183
>она у меня больше для игр
Чом граєся на роботі?
Replies: >>76252
>>76251
Это мой личный ноут, на выходные забираю его домой поиграть.
Fixed toggling "only favorite tags" setting
boards/views/all_threads.py
Отныне уведомления стали чуть более функциональными. Кроме подписки на имена пользователя, будут добавляться уведомления для тредов, которые созданы в ваших избранных тегах. Так вы можете заметить свежий перекат или просто новый тред.
Replies: >>76296, >>76306
Add notifications for threads created in favorite tags
boards/context_processors.py
boards/models/user.py
boards/templates/boards/base.html
boards/views/notifications.py
Show only threads created in the favorite tag, not all its posts
boards/models/user.py
Do not load fav tags when need to only check notifications
boards/abstracts/settingsmanager.py
boards/context_processors.py
boards/models/user.py
boards/views/notifications.py
>>76278
Надо ещё придумать, как бы обобщить избранные треды и уведомления. Они сейчас различаются по сути только интерфейсом: информацию по тредам можно получать поодиночке, и удобно переходить в последний непрочитанный пост. Уведомления же прочитываются глобально, и список их тоже глобален.
Don't load fav tags twice in a context processor
boards/context_processors.py
>>76278
Це лайно вже навчилося не просиратися разом із сесією? Якщо нє, то не потрібно.
Replies: >>76308
>>76306
Оно просирается, но тебе никто не мешает подписаться на одно и то же в разных сессиях. Уведомления частично хранятся в связке с постами (по юзеру), а частично вообще не хранятся (по тегам), так что они никуда не потеряются. Теряется только твоя настройка для их фильтрации.
Replies: >>76354
Added domain image for bitbucket
boards/static/images/domains/bitbucket.org.png
>>76308
>подписаться на одно и то же в разных сессиях
Та ну його в сраку, зроби хоч експорт/імпорт якийсь тоді.
Replies: >>76358, >>76367
А тем временем: http://neboardo3svhysmd.inion/
Replies: >>76357
>>76355
inion?
>>76354
Тебе влом потыкать в пару тегов заново?
Replies: >>76368
>>76354
Я так понимаю, ты хочешь экспортировать в файл:
* Избранные треды
* Избранные теги
* Скрытые теги
* Имена пользователей
* Тема
* Таймзона
* Режим просмотра изображений
Верно, или я что-то пропустил? Я в принципе могу это закидывать в ini-файл, и соответственно импортировать обратно в сессию.
Replies: >>76369
>>76358
Які пару? У мене в просраній сесії кілька десятків ниток було, у тому числі бампляматнутих, на випадок, якщо до них до архівації ще хтось напише.
Replies: >>76372
>>76367
Я не знаю, що там до сесії прив'язується, тобі видкіш.
>>76368
Там ограничение на количество тредов вроде. Точно не помню, но несколько десятков вроде нельзя.
Colored border for tag view
boards/templates/boards/all_threads.html
Надеюсь, никто не видел того что я только что сделал. У меня была прекрасная идея, но от такого интерфейса можно выйти в окно :3
Replies: >>76377, >>76378
>>76376
PS Выглядело это так. Предполагалось, что цветовая дифференциация тегов позволит быстро различать, какой тред откуда.
>>76376
И как мне теперь это развидеть?
Replies: >>76379
>>76378
Радуйся что у меня скриншота главной не сохранилось. Вот уже где самый ад в списке разделов.
Form reset should be a button just like anything else
boards/templates/boards/form.html
Simplify paginator page list building and unified it between different views
boards/abstracts/paginator.py
boards/templates/boards/all_threads.html
boards/templates/boards/notifications.html
boards/templates/boards/paginated.html
boards/templates/boards/tag_gallery.html
boards/views/all_threads.py
boards/views/feed.py
boards/views/notifications.py
boards/views/search.py
boards/views/tag_gallery.py
Added missing quote
boards/abstracts/paginator.py
Compute divided range only once, do not expose it outsided of paginator
boards/abstracts/paginator.py
>>76652
Что-то произошло с постгресом, база автоматически восстановилась, но видимо протеряла часть нумерации.
Replies: >>76661
Коли поцтив, піймав з першого разу Internal Server Error. Щось жахітне у тебе робиться, рачешколярику. Утім, це нормально.
Replies: >>76763
>>76731
Я перезапустил постгрес. Тоже поймал эту ошибку, но причина мне неизвестна.
Replies: >>76764
>>76763
Если опять увидишь такую ошибку, сообщи сюда.
Make OP's post info bold in MD theme
boards/static/css/md/base_page.css
Replies: >>76838
>>76795
Нащо?
Replies: >>76843
>>76838
В уведомлениях трудно различить треды и посты с упоминанием юзера.
Replies: >>76884
>>76843
Але ж це майже одне й те ж.
Replies: >>76892
>>76884
Я замелтил что мне хочется различать, а не получается. Поэтому и добавил фичу. В конце концов, есть ещё 9000 тем где этого нет, выбирай любую.
Хочу вернуть прогрессивную шкалу таймаута. Перед первым постингом ждём минуту, дальше – 40 секунд, 30, 20 и так далее до 5, если ваша сессия уже давно активна и много нафлудила. Как вам, стоит ли? Или многие часто заходят с новых сессий?
Replies: >>76943, >>76957
>>76942
Аналогично модифицирую PoW. Надо кстати проверить, работает ли он ещё.
Move posting validation to class-based validators for PoW and Time-based
boards/abstracts/settingsmanager.py
boards/forms/__init__.py
boards/forms/validators.py
>>76942
Головне — щоб нижня межа лишалася значною. Інакше бот трохи постраждає і зможе нарешті моментально засрати бірду. Я вже колись проводив експеримент — простим скриптом скотив порожню нитку до бамплямату всього за дві години.
Replies: >>76958
>>76957
Борда вообще не защищена от направленной атаки. Сейчас можно например заранее нагенерить проверенных сессий (у которых таймаут прошёл), а потом разом бахнуть с них постов. Тут по хорошему нужна капча, но мне лень её встраивать, пока нет реальной угрозы.
Replies: >>76973, >>76993
>>76958
Не постил X часов с сессии → ресет таймаута.
Replies: >>76975
>>76973
X часов против 10 секунд не очень помогут. Я могу сгенерить миллион сессий, подождать 10 секунд и всеми бахнуть.
>>76958
Если уж конкретно возьмутся, то и капча не особо спасет при текущих расценках на антигейте. Другое дело это все бессмысленно, если борда резиновая.
Но вообще адаптивная капча бы не помешала.
Например юзер вводит капчу один раз и потом если постит в определенных рамках, то капчу не вводит. Ну или же просто давать возможность постить без неё скажем на сутки или более.
Кстати, я не знаю какая тут схема БД используется, но было бы неплохо не загружать файлы, которые уже присутствуют на доске, а просто линковать с новыми постами. Если конечно файл здесь отдельная сущность.
Если доска с большим лимитом или резиновая, то это довольно-таки сильно сэкономит место.
Replies: >>76998
>>76993
>Но вообще адаптивная капча бы не помешала.
Уже обсуждалось. Адаптивная капча это неудобно, потому что форма видна всегда, и тебе при загрузке страницы надо её либо показать, либо нет. А когда ты будешь постить – неизвестно.
>было бы неплохо не загружать файлы, которые уже присутствуют на доске, а просто линковать с новыми постами
Дедупликация давно уже есть. Не потому что это экономит место, а потому что удобно. Вот только затраты на поиск "существует ли уже" добавляются, при ддосе это будет заметно.
Replies: >>77005, >>77021
>>76998
Необязательно показывать сразу, можно перед постингом. Конечно оно без жс работать не будет.
>Дедупликация давно уже есть
А вот как.
>Не потому что это экономит место, а потому что удобно
Это пока 50мб вебм не загружают, лол.
>Вот только затраты на поиск "существует ли уже" добавляются, при ддосе это будет заметно.
В смысле при вайпе? Не самый тяжелый запрос, да и хеш не шибко долго вычисляется. Тем более скорее всего проверка после валидации сообщения.
Replies: >>77007
>>77005
>Конечно оно без жс работать не будет.
Не годится.
>Это пока 50мб вебм не загружают, лол
Тут довольно редко загружают дубликаты файлов. Чаще всего это стикеры.
>Не самый тяжелый запрос, да и хеш не шибко долго вычисляется.
Там не только хэш, см. ветку про коллизии. Я после хэша сравниваю содержимое полностью. Да, это относительно быстро, но это пока пользователей мало.
>Тем более скорее всего проверка после валидации сообщения.
Точно не помню, возможно.
Replies: >>77009
>>77007
>Я после хэша сравниваю содержимое полностью.
Попиксельно чтоле?
Кстати никогда не копал в сторону сравнения одинаковых изображений разного разрешения или других уровней(например после коррекции).
Но думаю это уже выходит за рамки поиска идентичности т.к изображение всё же другое.
Replies: >>77011
>>77009
>Попиксельно чтоле?
Массивами байтов.
>Кстати никогда не копал в сторону сравнения одинаковых изображений разного разрешения или других уровней(например после коррекции).
Знаю что это возможно и примерно знаю как, но такой задачи не стояло. У меня есть идея прикрутить нейросеть к борде, но не для этого, а для детекта спама.
>>76998
Я даже больше скажу, ссылки тоже ЕМНИП дедуплицируются. У них хоть и нет файлов, занимающих место, и вообще пока мультипостинг одной и той же ссылки это редкость, но просто чтоб лишние объекты в базе не держать, сделал вот так.
Кто-нибудь пользуется галочкой "подписаться на тред"? Я не помню, по чьему запросу её добавлял, но как-то ни разу не воспользовался.
Replies: >>77023
>>77022
Вспомнил, когда у нас был упрощённый режим формы с картинкой и полем для ввода текста. Надо как-нибудь написать красивый вариант поля файла, чтобы оно было чем-то вроде двух маленьких кнопочек: загрузить файл, или добавить ссылку (текстовым попапом).
Remove a setting that is no more used
boards/config/default_settings.ini
Для экономии трафика есть идея: объединить всю обновляемую информацию в один keepalive-запрос. Сейчас каждые сколько-то секунд у нас обновляется тред и информация об избранных тредах. А что если сделать всё в одном? Получать обновления сразу всех открытых тредов, плюс счётчик избранных. И делать это в воркере, а не каждой вкладке (для избранных ЕМНИП и так это работает, я правда не уверен что точно воркер один на всех).
О, вот ещё идея. Форумная криптовалюта, но без PoW. Делаем так: у вас в сессии лежит какое-то количество монет. Изначально пусть это будет 5. На публикацию каждого поста вы тратите по 1. Если пост провисел на борде больше 10 минут, вам за каждый пост начисляется по 2 монеты, и вы можете писать их дальше. Можно сделать разную стоимость для постов и тредов, например, чтобы треды создавали те у кого уже много накоплено. Так спамеры будут отсекаться. Также можно давать дополнительные деньги за посты на которые кто-то ответил.
Replies: >>77057, >>77058, >>77142
>>77056
Ах да, а за удалённые посты начислять штрафы.
>>77056
И ещё первоначальный скор начислять только после какого-то времени с момента создания сессии, чтобы немного усложнить жизнь ботам.
Removed 2 null=True attributes that raise system warnings
boards/migrations/0070_auto_20171225_1149.py
boards/models/post/__init__.py
Use generic django sessions, not specifically neboard ones
boards/utils.py
neboard/urls.py
>>77056
Файно, реалізуй. А який курс до USD вона матиме? Може, я багато назбираю і захочу вивести.
Replies: >>77143, >>77144
>>77142
Чтобы вывести, тебе нужен покупатель. Кому нужна валюта сайта с тремя юзерами?
Replies: >>77146
>>77142
Тут есть ещё одна проблема: придётся привязывать посты к сессиям. Чтобы отслеживать, чьи посты удаляли, и чьи висят долго. А это деанон. Или придумать какой-то другой механизм.
Replies: >>77145
>>77144
>Или придумать какой-то другой механизм.
Мне приходит в голову ещё одно поле: счёт. Отправляя пост, ты будешь указывать, на какой счёт его положить. В частности, если это какой-нибудь сомнительный комментарий или спам, можно будет указать "пустышку", но тогда к нему будут применяться и правила пустышки – долгое время ожидания.
При отправке поста борда будет смотреть, сколько постов на этом счету, и суммировать это в количество денег на нём. Вопрос правда в том, куда складывать штрафы, потому что удалённые посты нигде не хранятся. Возможно, это повод переделать удаление в "затирание" постов, вместо которых будет показываться заглушка, но физически они останутся.
Replies: >>77147
>>77143
Іншим юзерам! І спамерам.
>>77145
Нащо зберігати? Ти хочеш повну історію транзакцій для рахунків?
Replies: >>77149
Specify session in the form constructor
boards/forms/__init__.py
boards/views/all_threads.py
boards/views/api.py
boards/views/tag_threads.py
boards/views/thread/thread.py
>>77147
А на основании чего считать? Вот допустим я отправил пост, снял у тебя столько-то денег. Через полчаса тебе должен прийти доход, а информации о тебе нигде нет – посты уже просто посты, ни с кем не связанные.
Мне сейчас больше нравится хранить адрес счёта внутри поста, не привязывая его к юзерам, а уже юзер будет вводить тот который он хочет "пополнить" ил которым воспользуется для проверки на спам. Тут пока видится одна проблема: если это поле очистить вручную, где взять новый валидный адрес? Нужно чтобы кнопка сброса формы возвращала тот что там был, ну и где-нибудь добавить кнопочку "сгенерить новый" (наверное, в настройках или прямо в форме). Идеально было бы иметь табличку со всеми использованными адресами и их счётом, но над этим я ещё подумаю. Адреса будут скорее всего UUID4, его проще всего сгенерить и он достаточно защищён от коллизий.
Replies: >>77150, >>77200
>>77149
>Мне сейчас больше нравится хранить адрес счёта внутри поста, не привязывая его к юзерам
PS Это позволяет вообще не хранить счёт как отдельную сущность. Достаточно суммировать стоимость всех постов, вычитая из них самые свежие, которые находятся в рамках периода валидации. Это если без штрафов.
Replies: >>77181
>>77150
Хотя не, пожалуй удобнее будет хранить счета отдельно, а уже посты линковать с ними и вычитать/добавлять деньги атомарно. Вопрос только в том, в какой момент их начислять – гонять таймер отдельно неудобно.
Итак, нынешняя задумка выглядит так:
Есть аккаунт с uuid-адресом и счётом. Изначально счёт либо нулевой, либо маленький на несколько комментов. Тут я ещё не придумал, как бы ограничить постинг самого первого комментария, чтобы нельзя было зафлудить чистыми сессиями. Наверное, нужно сделать какую-то админку для просмотра таких "первых" постов, чтобы можно было их все разом потереть и забанить. Но вообще это вопрос открытый, я так и не придумал, что делать с чистыми сессиями, чтобы им помешать.
Когда вы отправляете пост, со счёта списывается какая-то сумма. Если на счету ноль, вы не можете постить и должны ждать. Время ожидания нужно расчитать, я бы поставил для начала минуту. А на первоначальный счёт давать допустим 5 единиц. Стоимость создания треда должна быть такой, чтобы его нельзя было создать сразу, и вообще треды должны быть дорогими. А треды со всякими извращениями вроде монохрома или стикерпака – особенно дорогими.
За достижение тредом бамплимита следует поощрять премией, так как это означает, что тред хороший, годный и активный. За удаление постов и тредов – списывать штрафы, размер которых будет задаваться в настройках. Просмотреть используемые счета и указать новые можно будет в настройках.
Когда пост провисел какое-то время, на счёт зачисляются деньги. За пост две единицы, за тред 5.
Replies: >>77191
>>77190
>Но вообще это вопрос открытый, я так и не придумал, что делать с чистыми сессиями, чтобы им помешать.
Как вариант, отмечать время создания счёта и для счетов младше одного дня применять дополнительные меры безопасности, например ужесточённый вариант нынешнего таймаута.
>>77149
Тоді можна просто наспамити за чужий рахунок.
Replies: >>77202
>>77200
Каким образом, не зная номера его счёта?
Replies: >>77205
>>77202
А, себто це буде на асиметричній криптографії і за рахунком, що видимий у поцті, не можна буде визначити ключ?
Replies: >>77210
>>77205
>це буде на асиметричній криптографії
Нет. Ассиметричная криптография – это публичный и приватный ключ. А здесь будет только приватный. Ты же не можешь пересылать деньги на чужой счёт, поэтому его реквизиты нужны только владельцу.
Updated favicon, all thanks to >>62169
boards/static/favicon.png
Replies: >>77318, >>77324
>>77317
О как, оно умеет парсить рефлинки внутри рсс.
>>77317
Навіщо?
Replies: >>77326
>>77324
Тыкал рандомные картинки и увидел эту, мне понравилось.
>>77355
А шо не так?
Replies: >>77374
>>77360
Зрада.
Борда была какое-то время недоступна. Проблемы на этот раз с ext4, какой-то из файлов неборды посыпался.
@neko, çómu do zawantażénńa storinký wsi nesniżynký wyṡaŧ u kutoçku? Né pódużaw jih prýhowatý?
Replies: >>77611
>>77608
Потому что это не я писал. Нашел рандомный скрипт в интернетиках. Вангую что он за тобой следит и сливает инфу в АТБ АНБ.
Replies: >>77614
>>77611
Wse z toboju zrozumilo, kryptoparanojiku.
Replies: >>77628
Блядь, нека, угомони свеню, она же опять срёт.
Replies: >>77619, >>77627
>>77617
Нытье без ссылок на драму не принимается. Если бы платные посты уже были, я бы тебе штраф вкатил за то что тратишь мое время.
Replies: >>77629
>>77614
Скажи спасибо что не майнер.
Replies: >>77630
>>77627
Блядь, пиздло свинявое, глаза промой, половина танцпольного треда в каких-то польских иероглифах.
Replies: >>77632
>>77628
A zwidký ty znajéş, şço tam majnéra néma? Kulér u mené şumyŧ od nébirdý çohoṡ.
Replies: >>77633
>>77629
Первое предупреждение.
Можно писать любые иероглифы, пока они представляют собой осмысленную идею, а не флуд или мусор. Не можешь распарить – не читай.
>>77630
А ты научись писать человеческим языком, а то тебе никто не будет отвечать.
Replies: >>77639
>>77633
Daj wyznaçénńa ĺudśkoji mowý, faşysté.
>человеческим языком
>русня
лiл
Replies: >>77658
>>77655
Rozwelý tut tancpol!
Blinking notification counter if you have any
boards/static/css/base.css
boards/templates/boards/base.html
@neko, skotýńako, ja wżé neboard.me/all/ za baseHref usijeji birdý sprýjmaju! Prýbéry otejé lajno zamisŧ glagné! I wlorçan powérny!
Replies: >>77794
>>77791
nyet
Replies: >>77811
>>77794
Xto nym kory'stuje't's'a wzahali?!
>>77670
Aha, zaxowatýśa wyrişýw?
// Do reçi, kudy podilýśa sniżynký?
Replies: >>77861
>>77855
>Do reçi, kudy podilýśa sniżynký?
За окном снега нет – значит на борде тоже нет.
// А это кстати идея, сделать скрипт снежинок, но символы вставлять в зависимости от того что за окном.
Replies: >>77875
* {
font-family: sans-serif;
}
Едрить, Нека, кто же так делает? Ладно ещё inherit, но что б так!
Алсо, на pre нет monospace! Причём эта звезда (т.к. внутри у тебя есть элементы, у которых ничего не назначено), всё перебьёт.
Replies: >>77873, >>77877
>>77872
>Едрить, Нека, кто же так делает?
Я не знаю принципов, как сумел так и написал.
Replies: >>77891
>>77861
U tebé za wiknom, çy şo?
Replies: >>77876
>>77875
Ну не у тебя же.
Replies: >>77878
>>77872
Ta şo monosracé, win uzahali polamanýj, tam bibi-kodý wýkonujuŧśa uséredýni.
>>77876
A çómu w tebé?
Replies: >>77880
>>77878
Потому что я император, а ты нет.
Replies: >>77902
>>77873
Шо тебе мешало написать
html { … }
? Прочитай про наследование в CSS, в общем. Должно помочь.
Replies: >>77893
>>77891
А чем * хуже?
Replies: >>77910
>>77880
>император
Tualetu xiba şço.
>>77893
Любой внезапно появившийся элемент внутри отстайленного подхватит стиль из *, что вряд ли будет соответствовать тому, что ты ожидаешь, для свойств, которые наследуются.
<pre><code>AAA</code></pre>
+
* { font-family: sans-serif; }
pre { font-family: monospace; }
AAA будет sans-serif, что логично, но абсолютно бесполезно. Причём font-family и так наследуется, т.е. нет никакого смысла задавать его в * (кроме, быть может, font: inherit; если ты хочешь быстро и решительно сбросить все дефолты, включая размеры заголовков, болды и прочее, и выставить их вручную).
Replies: >>77912
>>77910
>Любой внезапно появившийся элемент внутри отстайленного подхватит стиль из *
Понял, переделаю.
Don't style code into sans-serif
boards/static/css/base.css
@neko, a prýkruty-no do birdý détaĺni hrafiký, jak u Windows 10. Aktywnosti u nýtkax, prýmirom.
Replies: >>77961
>>77958
Чо ещё за активность? Опиши подробно что хочешь увидеть.
Replies: >>77964
>>77961
Na osi X ças, na osi Y kiĺkisŧ poctiw. I şçob çépurne bulo j animowané.
Obmazawśa python-language-server i vim-lsc, pérédaju intelijéjobowi palkyj prýwit.
Xe, stari fawikoný z nowymý pérémişalýśa. Powérny pomaranqéwýj fawikon, skotýńako!
Кто часто пользуется поиском? У меня есть идея вынести его на главную.
Replies: >>78243
Changed link to about (authors) page a bit
boards/templates/boards/authors.html
boards/templates/boards/base.html
boards/urls.py
>>78234
>Кто часто пользуется поиском?
Ja.
>У меня есть идея вынести его на главную.
Na jaku, na ótu népotribnu?
Replies: >>78260
>>78243
>Na jaku, na ótu népotribnu?
Да. Ты заходишь и сразу ищешь интересное тебе.
Replies: >>78291
Version bump
boards/config/default_settings.ini
Added tag 4.9.1 for changeset f781e25fcd29
.hgtags
>>78260
Kudy zaxodżu? Ja tudy né xodżu, jakşqo méni treba poşuk — ja widkrýwaju neboard.me/search.
Prevent zalgo inside posts
boards/static/css/base.css
Replies: >>78361, >>78389
>>78358
Naşqo? Krasywo ż bulo.
Replies: >>78420
>>78358
защоооооо
>>78361
Вы портите соседние треды. Люди не виноваты, что где-то рядом два животных порвались.
Replies: >>78430, >>78439
>>78420
>XŔOTI ETA NI STILI U MIŃA KRIWYJÉ, ETA GOMAŻÝWOTNÝJÉ ABIZUMILI!
Replies: >>78431
>>78430
Напиши стиль, который режет залго.
Replies: >>78434
>>78431
Ty ż joho wże napýsaw, tiĺký rozpowṡuđ.
.post, .tag_info {
overflow: auto;
}
Replies: >>78435
>>78434
Он не работает на тайтле.
Replies: >>78436
>>78435
Tak ty j né do tajtla zastosowuj, a do wśoho pocta. Tajtl inlajnowýj, pict bloqnýj.
Replies: >>78437
>>78436
Ко всему посту нельзя, там картинки побьются и другие штуки.
Replies: >>78453
>>78420
>Люди не виноваты,
Люди виноваты.
>два животных порвались
Жопа твоя порвалась, азаза)))00))
>>78437
Tak uże pobylýśa, jolopé. A wid mojix styliw şqo bjeŧśa? Jajċa u twojij moşonci?
Replies: >>78467
>>78453
Что побилося?
Replies: >>78468
>>78467
Oqi zélenkoju promyj, pidmoskalýku >>78444
Replies: >>78469
>>78468
Какой-то скрин с пустой областью. Я должен догадываться, что это?
Replies: >>78475
>>78469
Bowduré, zwuż wjuport, rozhorný piqkur i pobaqýş. Jak tý komércijno pohromujéş wzahali, nawiŧ bah samotużký widtworytý né możéş.
Replies: >>78483
>>78475
>Jak tý komércijno pohromujéş wzahali, nawiŧ bah samotużký widtworytý né możéş.
Для этого есть специально обученные люди. Я иногда даже не смотрю что там написал, просто запускаю и говорю им проверить.
Replies: >>78488
Removed zalgo remover to fix image expand
boards/static/css/base.css
Replies: >>78487, >>78514
>>78484
Ty qoho birdu gwaltujéş, wyrodku? To dodajé, to odrazu prýbýrajé…
>>78483
Hm, a méne swarylý za dopuskanńa éléméntarnýx bahiw do QA. Możlywo, tomu, şqo QA bula odna na wśu komandu.
Replies: >>78492
>>78488
Зависит от проекта, команды и людей. Я могу себе это позволить, а кто-то нет.
Тихо и незаметно мы набрали 10 гигов медиа. Не прошло и пяти лет.
>>78484
A qómu moji styli natomisŧ né dodaw?
Ожидаю визгов на тему "уродливо, верните влорчан".
Mark OPs in MD theme with contrast background and border
boards/static/css/md/base_page.css
Replies: >>78650
New logo
boards/static/favicon.png
Replies: >>78650
>>78648
Seqa jakaś.
>>78647
Probiliw dodaj, qom wono take stysnuté.
Replies: >>78657
>>78650
ШГ. У меня пробелы на месте.
Replies: >>78673
>>78657
Jolopé, do qoho tut şrýfty, jakşqo w tebé nawiŧ widstupý miż blokamý né zadani?
Replies: >>78675
>>78673
Там есть отступы. У меня они отображаются. Между блоками достаточно дохрена переводов строки и пробелов, которые в конце схлопываются в один пробел.
Replies: >>78677
>>78675
Xŕoti, né zxlopujuŧśa, display: table u post-info ce lamajé.
Replies: >>78678
>>78677
Чромопроблемы видимо. В нём у меня тоже странно выглядит.
Replies: >>78679, >>78681
>>78678
Я пока не знаю, как это пофиксить, или сделать ему ширину по контенту без display:table. Буду думать, когда будет свободное время.
>>78678
W DNK u tebé problemý. Tablyċa je, a ŕadkiw i klitynok u nij néma — jak brauzer majé na takyj UB réahuwatý?
Replies: >>78682
>>78681
display:table это единственный кроссбраузерный способ заставить блок выравнивать ширину по контенту. Есть width: fit-content, но он работает только в хроме, а в фоксе только с костылём префиксом.
Replies: >>78683
>>78682
Ja jómu pro Fómu — win méni pro Jaremu. Né qipaju ja twoju tablyċu, zaspokojśa.
.post[data-opening=True] > .post-info > *:nth-child(1) {
border-left: 0;
}
inspector-stylesheet:1
.post[data-opening=True] > .post-info > * {
display: table-cell;
border-left: .5em solid transparent;
}
@neko, skotýńako, prýbýry tajmaut! Dowśé 30 sékund niqoho ne wýwantażujéŧśa!
Replies: >>78712
свинья скотина блядь
свинья скотина блядь
>>78703
Таймаут не 30 секунд, для загрузки поста он около 5 минут. Я не знаю, почему именно у тебя не выкачивается.
Replies: >>78714
>>78712
Ty joho téstuwaw? Możé, na riwni dżangý, uwsgi abo nawiŧ jadra şqoś rwe.
ÞANGA, ÞANGA, NE MOWQY
ÞANGA, ÞANGA, POKRÝQY
Add an ability to hide posts locally
boards/locale/ru/LC_MESSAGES/djangojs.mo
boards/locale/ru/LC_MESSAGES/djangojs.po
boards/locale/uk/LC_MESSAGES/djangojs.mo
boards/locale/uk/LC_MESSAGES/djangojs.po
boards/static/js/main.js
boards/templates/boards/post.html
Replies: >>78823, >>78825
>>78795
FFFFFUUUUUUUUUUUUUUUUUU
Replies: >>78824
>>78823
Что, теперь не сможешь спамить своим выдуманным языком?
Replies: >>78845
>>78795
А как эта хуйня работает? Только конкретный пост скрывает или все посты одного человека?
Replies: >>78826
>>78825
Конкретный, конечно. Иначе это была бы дыра для деанона.
Replies: >>78827
>>78826
Нихуя не понял тогда в чём смысл скрывать один пост. Если свеня срёт, логично её целиком скрыть.
>Иначе это была бы дыра для деанона.
Паша, ты заебал. Тут все прекасно друг друга знаю.
// Саша
Replies: >>78828
>>78827
>Нихуя не понял тогда в чём смысл скрывать один пост.
Чтобы он тебя не нервировал.
>Если свеня срёт, логично её целиком скрыть.
Можно было бы добавить скрытие по трипкоду, но никто регулярно ими не подписывается. А больше нет никакого публичного критерия, по которому можно было бы скрыть автора целиком.
Replies: >>78829, >>78846
>>78828
>Чтобы он тебя не нервировал.
Сложно представить себе пост, доставляющий мне баттхерт. А вот несколько страниц бессмысленного говна ВЧИ МОВУ есть в соседнем треде. Скрывать можно по IP, по кукам, можно скрывать одинаковые посты
Replies: >>78830, >>78847
>>78829
>Скрывать можно по IP, по кукам
Нельзя, потому что эта информация не должна быть доступна пользователям.
>можно скрывать одинаковые посты
Он будет добавлять туда рандомные символы. Без ИИ или нейросети это бесполезно.
Replies: >>78831
>>78830
>Нельзя, потому что эта информация не должна быть доступна пользователям.
Сделай как на сосаче, у каждого пользователя есть идентификатор, типа Жирослав Геббельсович или Свиновлад Навальный. По нему и скрывается. Понятно что можно изъедбнуться и менять прокси для каждого поста, но я думаю что у свени не настолько много времени и желания.
Replies: >>78833, >>78848
>>78831
>Сделай как на сосаче, у каждого пользователя есть идентификатор
Не сделаю. Один из основных принципов этой борды – анонимность не будет нарушена никаким способом. Вот введу монетизацию постов – тогда можно будет его и тебя штрафовать :3
Replies: >>78835
>>78833
У этой борды 3.5 посетителя, а семёнов видишь только ты.
Replies: >>78837
>>78835
Могу тебе по секрету сказать, что посетителей здесь достаточно много, просто они непостоянны. Некоторых даже я не могу различить.
Replies: >>78849
Fixed spaces in titles in MD theme in chromium-based browsers
boards/static/css/md/base_page.css
>>78824
Ńe, w mené vid vértýkaĺnoji trykrapký bombanulo.
>>78828
>больше нет никакого публичного критерия
Na susidnij ukrobirdi iz mojimý ijerohlifamý uspişno boŕuŧśa ştatným vordfiĺtrom ĺaĺký.
Replies: >>78862
>>78829
>А вот несколько страниц бессмысленного говна ВЧИ МОВУ
Débiluşko, na nytci vysýŧ nacionaĺna mitka, nacionaĺni mitký zatverþéno pravýlamý birdý, idy w sraku.
>>78831
>у свени не настолько много времени
U mené wzahali néma qasu na wśaki tam birdý. Ja joho kradu sam u sebé. I wże naviŧ postrażdaw vid ćoho i rýzýkuju postrażdatý znovu, ćoho razu ostatoqno. Ale nénawquvanoho xoxla ce ne zupynýŧ. Tiĺký żývyĺni pizđuli.
>>78837
Skiĺký z nyx iz toru? Méni qasto zdajeŧśa, şqo qeréz najawnisŧ u darknetiwśkyx listýnhax dejaki vidviduvaqi wvażajuŧ ću birdu suto darknetiwśkoju i posŧaŧ tut nu nadto vidverti reqi. Na kştalt otoho triĺĺa, şqo péréxopyw zakladku u Şyndowz.
Replies: >>78863
>>78846
Вордфильтры не идеальны, от них больше вреда чем пользы. Я не люблю костыльные полумеры, поэтому просто не читаю твоё говно.
>>78849
Сделал стикер специально для тебя.
Replies: >>78875
Speed up post hiding, do not load the hidden posts list for each post being processed
boards/static/js/main.js
Replies: >>78961
>>78927
Povérny Wlorqan, skotýńako! I Sanýqa povérny!
Replies: >>79051
Subscribe to threads you created or replied by default
boards/forms/__init__.py
boards/static/js/form.js
Replies: >>79072
Fixed thread creation when subscribe option is enabled
boards/models/post/manager.py
Version bump
boards/config/default_settings.ini
Added tag 4.9.2 for changeset 7c9be4c674ac
.hgtags
>>78961
Я же выкладывал архив влорчана. Покупай домен, поднимай, я разрешаю.
Replies: >>79054
>>79051
Treba şqe posty z şebarxivu sparsýtý, to né tak prosto.
>Покупай домен
Bézkoştownýx że wdostaĺ.
>>79041
Svińja skatina, méni téper kożén raz cej praporeċ znimatý?!
свинья скотина блядь сними галочку
свинья
сука скотина
ёбаное гоможивотное
блядь
Slightly changed and optimized tag thread counters
boards/templates/boards/all_threads.html
boards/views/tag_threads.py
Option to subscribe to threads by default
boards/abstracts/settingsmanager.py
boards/forms/__init__.py
boards/locale/ru/LC_MESSAGES/django.mo
boards/locale/ru/LC_MESSAGES/django.po
boards/locale/uk/LC_MESSAGES/django.mo
boards/locale/uk/LC_MESSAGES/django.po
boards/views/all_threads.py
boards/views/settings.py
boards/views/thread/thread.py
>>75752
Ну и хуйню творишь (без обид), потому что а) это, как правило, никому не нужно; б) после нечитаемых оптимизаций на спичках ты серьёзно потеряешь скорость в поддержке и имплементации новых фич. Используй чёткие метрики времени загрузки страницы, и ты поймёшь, что это никому не нужно (я-то навелосипедил свою аналитику, но ты можешь использовать Google Analytics, там вроде такое тоже есть).
держу свою мелкопарашу уже пятый год как-кун
Replies: >>79415
Subscribe/unsubscribe thread by ajax
boards/static/js/thread.js
boards/templates/boards/thread_normal.html
boards/views/thread/thread.py
CBIHЬЯ CKATIHA
Replies: >>80068