Несколько ссылок по программированию
Feb. 20th, 2020 04:55 pmUsing gcc sanitisers to get a nasty bug fixed
К описанным в статье директивам компилятора и линкера должны прилагаться ещё и LD_PRELOAD соответствующих библиотек. Без них ничего не летает.
Differential fuzzing of cryptographic libraries
Вот до практического применения этой методологии у меня руки пока не дошли.
Post-Production Editing using Git
Немного git-овой магии про то, как привести коммиты в человеческий вид постфактум. Кое-что пробовал, но в git я на очень базовом уровне разбираюсь, к сожалению.
К описанным в статье директивам компилятора и линкера должны прилагаться ещё и LD_PRELOAD соответствующих библиотек. Без них ничего не летает.
Differential fuzzing of cryptographic libraries
Вот до практического применения этой методологии у меня руки пока не дошли.
Post-Production Editing using Git
Немного git-овой магии про то, как привести коммиты в человеческий вид постфактум. Кое-что пробовал, но в git я на очень базовом уровне разбираюсь, к сожалению.
no subject
Date: 2020-02-20 02:22 pm (UTC)Этим можно заниматься, только когда уже известно что реальные баги все выловлены.
no subject
Date: 2020-02-20 02:46 pm (UTC)no subject
Date: 2020-02-20 02:49 pm (UTC)Вот на опыте этих двух юзкейсов я делают вывод, что fuzzing-ом надо заниматься только тогда когда любыми другими способами никаких багов найти не удается.
В смысле после того, как обработаны все false positives от статических анализаторов, coverage analysis показывает на нормальном regression test suite минимум пару девяток, и всякие gcc-шные sanitizer-ы в купе с валгриндом рассказывают что у вас идеальный код.
no subject
Date: 2020-02-20 02:58 pm (UTC)no subject
Date: 2020-02-20 07:15 pm (UTC)Гитовая статья хорошая. Можно давать джуниорам.
В ней не хватает трёх вещей:
echo’м иsed’ом; а коммитить каким-нибудь фронтэндом, позволяющим выделять и стейджить отдельные строки (git gui, git-cola, magit, …), а не черезgit add -p»;git config --global merge.conflictstyle diff3прямо сейчас и навсегда;git log --all --graph --decorate --color --oneline --date-order.И ещё правило не мёржить в постпродакшне устарело с появлением
git rebase --rebase-merges.no subject
Date: 2020-02-20 10:43 pm (UTC)Улитка по коду фуззи
no subject
Date: 2020-02-25 08:18 pm (UTC)Выйди и войди по-нормальномуПойди и перекоммить в другую ветку с хорошим описанием, чтобы в MR попало только это.В пост-продакшене уже по-любому немного поздно :)
no subject
Date: 2020-02-26 11:38 am (UTC)no subject
Date: 2020-02-26 12:15 pm (UTC)Я по диагонали прочитал, и потому остался при более общепринятом, АФАИК, в мире софтверной разработки понимании слова "post-production".
А сам я пользуюсь иногда другим инструментом: если джуны долго и мучительно в 100500 итераций коммитили чёрти что, то я ставлю в морде гитлаба у MR галочку squash и прописываю собственный текст для единственного финального коммита. Дальше кому очень хочется почитать историю полёта мысли корявыми путями - может из этого коммита пойти в исходный MR и почитать.