From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Wed, 9 Dec 2020 05:10:04 +0300 From: "Dmitry V. Levin" To: ALT Devel discussion list Message-ID: <20201209021004.GA5179@altlinux.org> References: <20201126141636.2742206-1-vseleznv@altlinux.org> <20201126144927.h36zzrisholvca3s@example.org> <20201126145439.GA2742643@portlab> <20201126151701.zm627zsqorxzd52z@example.org> <20201126155150.6kaw4f4xbjitoyrm@example.org> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20201126155150.6kaw4f4xbjitoyrm@example.org> Subject: Re: [devel] [PATCH 1/3] Introduce nodiff directive for gear-rules X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 09 Dec 2020 02:10:05 -0000 Archived-At: List-Archive: List-Post: On Thu, Nov 26, 2020 at 04:51:50PM +0100, Alexey Gladkov wrote: > On Thu, Nov 26, 2020 at 04:17:01PM +0100, Alexey Gladkov wrote: > > > В этом плане > > > > > > tar: v@version@:. > > > diff: v@version@:. exclude=.gear > > > > > > по-моему выглядит менее красиво. Но я могу подготовить и такой вариант. > > > > Для меня это выглядит более понятно так как первый вариант выглядит > > понятно только если знать, что nodiff это опция директивы diff. > > > > Если хотите увеличить читабильность, то давайте реализуем многострочные > > директивы. Тогда можно будет написать: > > > > tar: v@version@:. > > diff: v@version@:. . \ > > name=@new_dir@-@version@-@release@.patch \ > > exclude=.gear > > Быстрый патч, который позволит сделать такое. Нужно проверить не сломаются > ли какие-нибудь gear-rules. По крайней мере в Сизифе gear-rules, содержащих символ "\", не обнаружено. > Signed-off-by: Alexey Gladkov Это хорошо, но в gear-rules(5) сейчас сказано буквально следующее: "There is no support for line continuation." Так что documentation update и commit message тоже нужны. :) > --- > gear | 3 ++- > tests/gear-rules-diff-tag-tag-name.test | 11 +++++------ > 2 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/gear b/gear > index 6282c92..3c95eaa 100755 > --- a/gear > +++ b/gear > @@ -575,7 +575,8 @@ parse_rules() > done <"$workdir/rules" > > lineno=0 > - while read -r cmd options; do > + # shellcheck disable=SC2162 > + while read cmd options; do > lineno="$((lineno+1))" > local optional=0 > case "$cmd" in > diff --git a/tests/gear-rules-diff-tag-tag-name.test b/tests/gear-rules-diff-tag-tag-name.test > index 9c244d8..2234be3 100644 > --- a/tests/gear-rules-diff-tag-tag-name.test > +++ b/tests/gear-rules-diff-tag-tag-name.test > @@ -24,12 +24,11 @@ gear_rules_diff_tag_tag_name() # test entry point > git tag -a -m t1 v2 > git rm -q -f $dst/file > mkdir .gear > - printf '%s: %s %s %s\n' \ > - "$gear_directive" \ > - "v1:${src%/*}/@name@-v@version@" \ > - "v2:${dst%/*}/@name@-r@release@" \ > - "name=@name@-@old_dir@-@new_dir@-@version@-@release@.diff" \ > - >.gear/rules > + cat >.gear/rules <<-EOF > + $gear_directive: \ > + v1:${src%/*}/@name@-v@version@ v2:${dst%/*}/@name@-r@release@ \ > + name=@name@-@old_dir@-@new_dir@-@version@-@release@.diff > + EOF > git add .gear/rules > gear-store-tags -a > git commit -q -a -m 3 -- ldv