[devel] [git update] packages/hasher: heads/master

Dmitry V. Levin =?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Сб Авг 11 02:17:38 MSD 2007


On Fri, Aug 10, 2007 at 08:29:33PM +0400, Alexey M. Tourbin wrote:
> Update of /people/at/packages/hasher.git
[...]
>     On the "install ... && Verbose ... || Fatal ..." clauses.  I think this
>     is overkill.

Мне важно не только видеть причину сбоя, но и реакцию программы на сбой.
Возможно, диагностика от install и достаточна.  Решение принимается
субъективно в каждом конкретном случае.

>     On the "if shell_function ...; then ...' clauses.  This is evil.  Don't use
>     shell function in the "if" conditions, because "sh -e" mode is disabled for
>     such calls.  You can no longer expect that something "just fails".

То же самое касается и shell_function && on_success || on_failure.

>     On the "cat file |while read ...; grep || echo >bad; .. done' clauses.
>     I replaced them with "while ... done <file".

Если можно обойтись без подпроцессов, то так и надо делать.

> +	rm -rf cache/contents/list.new
> +	mkdir -p $verbose cache/contents/list.new

Здесь и далее, "rm -rf" с последующим "mkdir -p" на один и тот же каталог --
это неконсистентно; "-p" сбивает с толку читающего код.

> +	rm -rf cache/contents/tmp
> +	mkdir -p cache/contents/tmp
> +	local contents=cache/contents/tmp/contents
[...]
> +	contents_index_bin=chroot/.host/contents_index_bin
[...]
> +	cat <"$contents.bin" >"$contents_index_bin"
> +	rm -rf cache/contents/tmp

Здесь можно заменить cat на mv.

[...]
> +	rm -rf cache/contents/{index,list}
> +	install -p -m644 $verbose chroot/.host/contents_index_bin cache/contents/contents_index_bin
> +	install -p -m644 $verbose chroot/.host/contents_index_all.gz cache/contents/contents_index_all.gz

Тогда уж ln.

> +	contents_index_bin=chroot/.host/contents_index_bin
> +	contents_index_all=chroot/.host/contents_index_all.gz
> +	install -p -m644 $verbose cache/contents/contents_index_bin "$contents_index_bin"
> +	install -p -m644 $verbose cache/contents/contents_index_all.gz "$contents_index_all"

И здесь можно ln.


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?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/20070811/0c55072b/attachment-0001.bin>


Подробная информация о списке рассылки Devel