[devel] [git update] packages/giter-factory: heads/master
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Вс Сен 2 22:33:55 MSD 2007
On Mon, Sep 03, 2007 at 12:21:36AM +0700, Slava Semushin wrote:
> 2007/8/31, Alexey M. Tourbin <at на altlinux.org>:
> > Update of /people/at/packages/giter-factory.git
> [...]
> > +Fatal()
> > +{
> > + echo "$*" >&2
> > + exit 1
> > +}
> > +
> > +Progress()
> > +{
> > + echo "$*" >>out/progress
> > + > out/log
> > +}
> [...]
>
> Предлагаю использовать printf, вместо echo. (Так, на всякий случай..)
Довольно мелочное замечание при непонимании сути идеи.
Однако сделаю пояснение. У команды echo есть такая особенность, что она
может брать опциональные опции -n, -e и -E, а также (вероятно) их
комбинации -ne, -nE, -en, -En, -een, -EEn, -eEn и т.п.
А может и не брать.
Поэтому в случае untrusted data, т.е. если мы печатаем нечто, что пришло
откуда-то ещё, и нет априорных ограничений на это что-то, то есть риск,
что аргумент echo будет истолкован как одна большая опция (особенно если
он начинается с минуса; типа echo -eeeeeeeeeeeeee).
Но вообще эта предосторожность хорошо граничит с чувством вкуса.
Если нет оснований думать, что данные "слишком плохие", тогда и нет
оснований избегать использования echo.
В данном случае все вызовы функций Fatal и Progress начинаются с
константной строки.
Суть же идеи совсем в другом. Идея в том, что попытка сборки пакета
происходит с определённой гранулярностью. А гранулярность нужна для
того, чтобы обнаружить одно простое обстоятельство: ПРИ СБОРКЕ ПАКЕТА
ИЗМЕНИЛОСЬ СОДЕРЖИМОЕ БИЛДРУТА, И ОН ПЕРЕСТАЛ СОБИРАТЬСЯ.
Соответственно, имеется причинно-следственная связь между изменением
билдрута (и в чем оно состоит) и невозможностью сборки пакета.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20070902/1c55028f/attachment-0001.bin>
Подробная информация о списке рассылки Devel