From: Ivan Zakharyaschev <imz@altlinux.org>
To: devel-newbies@lists.altlinux.org
Subject: [newbies] sanity rules
Date: Sun, 17 Dec 2017 03:09:27 +0300 (MSK)
Message-ID: <alpine.LFD.2.20.1712170151360.7714@imap.altlinux.org> (raw)
[-- Attachment #1: Type: text/plain, Size: 2463 bytes --]
Hi!
У меня при общении с newbies сформулировались такие общие соображения о
том, к чему стремиться, о чём волноваться.
0. Не надо делать что-то непонятное, магическое.
(Если волнует непонятная магия, то можно спросить, что это, или спросить,
где про это узнать.)
1. Беспроблемность использования подготовленного пакета. Речь не идёт о
полной безошибочности, но ошибка, которую трудно отловить -- это
бОльшая проблема, и хорошо, если во время подготовки пакета её
удастся малыми силами предупредить.
(Более опытные мейнтейнеры могут подсказать, на что ради этого обратить
внимание во время подготовки пакета. Например, посмотреть в лог сборки.
Если волнуют какие-то предупреждения и непонятно, свидетельствуют ли они о
серьёзных проблемах, то можно спросить. Волновать должно всё непонятное --
ср.п.0.)
2. Беспроблемность для дальнейшей работы мейнтейнеров подготовленного
пакта, в т.ч. массовых изменений пакетов в Sisyphus "роботами".
(Важна понятность сделанного, когда другие будут читать ваши изменения
или роботы анализировать.
Важно удобство для разных возможных действий мейнтейнеров/роботов с
подготовленным исходным пакетом в будущем.
Важно, чтобы в будущем пакет требовал внимания (автоматически) тогда,
когда в нём что-то сломалось, пошло не так, как было проверено; и по
возможности -- только тогда, т.е. не требовать просмотра глазами каждый
раз. Когдя нет автоматических failures, когда что-то пошло не так, может
сложиться две плохих ситуации: каждый раз смотрим глазами, потому что
волнуемся: вдруг что-то пошло не так, и теряем силы и время или вообще не
смотрим, потому что нет сил, и пропустим настоящую ошибку -- ср.п.2.)
Печально, когда понимание этого теряется и разумное обсуждение сборки
пакетов заменяется какими-то догматическими спорами или тыканием пальцем
в другие пакеты, т.е. бесполезной тратой сил.
Пример:
Warning от компилятора может свидетельствовать о серьёзной ошибке
(например, использование функции без прототипа в C). Серьёзную ошибку не
надо оставлять в подготовленном пакете. (Ср. п.1.)
Если warning-ов не осталось, то для облегчения работы мейнтейнеров (п.2)
можно выставить -Werror. А то каждый раз придётся глазами проверять, нет
ли предупреждений (и при сборке новых версий, и при изменении сборочной
среды и требований по качеству к пакетам).
Если warning-и несерьёзные, но их мало, то проще сразу код поправить, чем
каждый раз о них думать. (Ср. п.2.)
--
Best regards,
Ivan
reply other threads:[~2017-12-17 0:09 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.LFD.2.20.1712170151360.7714@imap.altlinux.org \
--to=imz@altlinux.org \
--cc=devel-newbies@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
devel@ where you _can_ ask
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel-newbies/0 devel-newbies/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel-newbies devel-newbies/ http://lore.altlinux.org/devel-newbies \
devel-newbies@lists.altlinux.org devel-newbies@lists.altlinux.ru devel-newbies@lists.altlinux.com
public-inbox-index devel-newbies
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel-newbies
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git