ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] I: nut-2.2.2
@ 2009-02-09 22:51 Aleksey Avdeev
  2009-02-09 23:09 ` Dmitry V. Levin
  0 siblings, 1 reply; 9+ messages in thread
From: Aleksey Avdeev @ 2009-02-09 22:51 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 908 bytes --]

Приветствую.

    Собрал для себя nut-2.2.2-alt1.0.M40.1 (см. 
<http://git.altlinux.org/people/solo/packages/?p=nut.git;a=commit;h=5cead62433e431b1f66107a712e162e7cfbb226e>, 
за основу брал репозитарий amike@). Прошу посмотреть на предмет отправки 
в сизиф (nut-2.2.2-alt1.1, см. 
<http://git.altlinux.org/people/solo/packages/?p=nut.git;a=commit;h=9dd51fb453a08ef2a64347d5fffc026a76180996>) 
и бранчи.

   Собирал из-за обновлённого (с патчами от alexsid@) драйвера powercom 
(при просмотре состояния UPS`а (KIN-2200AP) nut-2.0.5 выдавал что-то 
молоправдопадобное, типа напряжения в 270В).

   На данный момент:

1. nut-2.2.2-alt1.1, сизифовская сборка -- собирается и устанавливается.

2. nut-2.2.2-alt1.0.M40.1, бэкпорт на 4.0 -- работает, и на первый 
взгляд (детально трясти буду на выходных) лучше чем 2.0.5 (для моего 
UPS`а, по крайней мере).

-- 

С уважением. Алексей.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: nut-2.2.2
  2009-02-09 22:51 [devel] I: nut-2.2.2 Aleksey Avdeev
@ 2009-02-09 23:09 ` Dmitry V. Levin
  2009-02-09 23:40   ` Aleksey Avdeev
  0 siblings, 1 reply; 9+ messages in thread
From: Dmitry V. Levin @ 2009-02-09 23:09 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 830 bytes --]

On Tue, Feb 10, 2009 at 01:51:35AM +0300, Aleksey Avdeev wrote:
> Приветствую.
> 
>    Собрал для себя nut-2.2.2-alt1.0.M40.1 (см. 
> <http://git.altlinux.org/people/solo/packages/?p=nut.git;a=commit;h=5cead62433e431b1f66107a712e162e7cfbb226e>, 
> за основу брал репозитарий amike@). Прошу 
> посмотреть на предмет отправки в сизиф 

Там есть довольно экзотические коммиты, например,

commit ff58fef6d28be84c58d03e2407307c5c7fa3973f
Merge: c4140b9148585120a75131e8eefc256695ca9ec6 76e354b12f8d2e1dadc440ecdbd28522dabf5000
Author: Aleksey Avdeev <solo@altlinux>
Date:   Fri Feb 6 17:20:28 2009 +0300

    Merge branch 'ALT/reliase/distr/empty' into ALT/reliase/distr/program

При наличии готового репозитория nut.git это выглядит даже более странно,
чем наследование всех классов от класса Object.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: nut-2.2.2
  2009-02-09 23:09 ` Dmitry V. Levin
@ 2009-02-09 23:40   ` Aleksey Avdeev
  2009-02-10  7:24     ` Eugene Prokopiev
  0 siblings, 1 reply; 9+ messages in thread
From: Aleksey Avdeev @ 2009-02-09 23:40 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 1997 bytes --]

Dmitry V. Levin пишет:
> On Tue, Feb 10, 2009 at 01:51:35AM +0300, Aleksey Avdeev wrote:
>> Приветствую.
>>
>>    Собрал для себя nut-2.2.2-alt1.0.M40.1 (см. 
>> <http://git.altlinux.org/people/solo/packages/?p=nut.git;a=commit;h=5cead62433e431b1f66107a712e162e7cfbb226e>, 
>> за основу брал репозитарий amike@). Прошу 
>> посмотреть на предмет отправки в сизиф 
> 
> Там есть довольно экзотические коммиты, например,
> 
> commit ff58fef6d28be84c58d03e2407307c5c7fa3973f
> Merge: c4140b9148585120a75131e8eefc256695ca9ec6 76e354b12f8d2e1dadc440ecdbd28522dabf5000
> Author: Aleksey Avdeev <solo@altlinux>
> Date:   Fri Feb 6 17:20:28 2009 +0300
> 
>     Merge branch 'ALT/reliase/distr/empty' into ALT/reliase/distr/program

   Это перенос конструкции из одной ветки в другую:

$ git-diff c4140b9148585120a75131e8eefc256695ca9ec6 
ff58fef6d28be84c58d03e2407307c5c7fa3973f

diff --git a/sample.spec b/sample.spec
index a86a764..aa243fa 100644
--- a/sample.spec
+++ b/sample.spec
@@ -10,6 +10,7 @@
  %def_without M30
  %def_without M40
  %def_without M41
+%def_without M50

  # for set distr release
  %define release_distr_num 1
@@ -31,6 +32,9 @@
  %if_with M41
  %define distr_switch M41
  %endif
+%if_with M50
+%define distr_switch M50
+%endif

  # %%release_num and %%release_distr set
  %if "%distr_switch" == ""

> 
> При наличии готового репозитория nut.git это выглядит даже более странно,
> чем наследование всех классов от класса Object.

   Это сделано для добавления в спек конструкции с отдельной историей 
(автоматизации вычисления правильного релиза, в зависимости от 
требуемого бранча). В дальнейшем -- позволит обновлять данную 
конструкцию (при появлении новых бранчей) простым образом, через git 
pull. (Пример такого обновления, добавление поддержки M50, как раз и 
привлёк твоё внимание выше.)

PS: Возможно есть более правильный способ для таких действий... Но я 
пока его не нашёл.

-- 

С уважением. Алексей.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: nut-2.2.2
  2009-02-09 23:40   ` Aleksey Avdeev
@ 2009-02-10  7:24     ` Eugene Prokopiev
  2009-02-10  8:10       ` Aleksey Avdeev
  0 siblings, 1 reply; 9+ messages in thread
From: Eugene Prokopiev @ 2009-02-10  7:24 UTC (permalink / raw)
  To: ALT Linux Team development discussions

> Это сделано для добавления в спек конструкции с отдельной историей
> (автоматизации вычисления правильного релиза, в зависимости от требуемого
> бранча). В дальнейшем -- позволит обновлять данную конструкцию (при
> появлении новых бранчей) простым образом, через git pull. (Пример такого
> обновления, добавление поддержки M50, как раз и привлёк твоё внимание выше.)

А насколько эта конструкция совместима с новой сборочной системой,
которая все равно требует явных разных коммитов для разных бранчей?

-- 
С уважением,
Прокопьев Евгений

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: nut-2.2.2
  2009-02-10  7:24     ` Eugene Prokopiev
@ 2009-02-10  8:10       ` Aleksey Avdeev
  2009-02-10 14:46         ` Dmitry V. Levin
  0 siblings, 1 reply; 9+ messages in thread
From: Aleksey Avdeev @ 2009-02-10  8:10 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 3194 bytes --]

Eugene Prokopiev пишет:
>> Это сделано для добавления в спек конструкции с отдельной историей
>> (автоматизации вычисления правильного релиза, в зависимости от требуемого
>> бранча). В дальнейшем -- позволит обновлять данную конструкцию (при
>> появлении новых бранчей) простым образом, через git pull. (Пример такого
>> обновления, добавление поддержки M50, как раз и привлёк твоё внимание выше.)
> 
> А насколько эта конструкция совместима с новой сборочной системой,
> которая все равно требует явных разных коммитов для разных бранчей?
> 

   Полностью совместима: бранч для бэкпорта конечно потребуется, но 
обновлять его можно через git pull с простым конфликтом (в %changelog).

   Небольшая демонстрация на примере бранчей demo/master (см. 
<http://git.altlinux.org/people/solo/packages/?p=nut.git;a=shortlog;h=refs/heads/demo/master>) 
  и demo/4.0 (см. 
<http://git.altlinux.org/people/solo/packages/?p=nut.git;a=shortlog;h=refs/heads/demo/4.0>):

1. Завожу демонстрационный бранч demo/master и обновляю в нём спек до:

$ git-diff master demo/master|cat
diff --git a/nut.spec b/nut.spec
index 8ea317b..fba4aa5 100644
--- a/nut.spec
+++ b/nut.spec
@@ -3,7 +3,7 @@
  # for set release
  %define release_pre alt
  %define release_base_num 1
-%define release_base_num2 1
+%define release_base_num2 2
  %define release_suff %nil

  # for distr selected
@@ -629,6 +629,10 @@ fi
  %_man3dir/*

  %changelog
+* Tue Feb 10 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.2
+- NMU
+- For backports demonstration.
+
  * Mon Feb 09 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.1
  - NMU

2. Завожу демонстрационный бранч demo/4.0:

$ git-checkout -b demo/4.0 4.0

3. $ git-pull . demo/master
Auto-merged nut.spec
CONFLICT (content): Merge conflict in nut.spec
Automatic merge failed; fix conflicts and then commit the result.

а) получаем обещанный конфликт:

%changelog
<<<<<<< HEAD:nut.spec
* Mon Feb 09 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.0.M40.1
- NMU
- Backports to 4.0
=======
* Tue Feb 10 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.2
- NMU
- For backports demonstration.
 >>>>>>> 2c105c94d9dd31a8be3d2515764216d9ac115d69:nut.spec

* Mon Feb 09 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.1
- NMU

б) решаем его (и обновляя релиз/дату) и комитим.

3. На выходе -- корректный бэкпорт:

$ git-diff 4.0 demo/4.0|cat
diff --git a/nut.spec b/nut.spec
index b2dfdce..e6df0d2 100644
--- a/nut.spec
+++ b/nut.spec
@@ -3,7 +3,7 @@
  # for set release
  %define release_pre alt
  %define release_base_num 1
-%define release_base_num2 1
+%define release_base_num2 2
  %define release_suff %nil

  # for distr selected
@@ -629,10 +629,17 @@ fi
  %_man3dir/*

  %changelog
-* Mon Feb 09 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.0.M40.1
+* Tue Feb 10 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.1.M40.1
  - NMU
  - Backports to 4.0

+* Tue Feb 10 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.2
+- NMU
+- For backports demonstration.
+
  * Mon Feb 09 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.1
  - NMU

-- 

С уважением. Алексей.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: nut-2.2.2
  2009-02-10  8:10       ` Aleksey Avdeev
@ 2009-02-10 14:46         ` Dmitry V. Levin
  2009-02-10 14:58           ` Aleksey Avdeev
  0 siblings, 1 reply; 9+ messages in thread
From: Dmitry V. Levin @ 2009-02-10 14:46 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 3563 bytes --]

On Tue, Feb 10, 2009 at 11:10:26AM +0300, Aleksey Avdeev wrote:
> Eugene Prokopiev пишет:
> >>Это сделано для добавления в спек 
> >>конструкции с отдельной историей
> >>(автоматизации вычисления правильного 
> >>релиза, в зависимости от требуемого
> >>бранча). В дальнейшем -- позволит 
> >>обновлять данную конструкцию (при
> >>появлении новых бранчей) простым 
> >>образом, через git pull. (Пример такого
> >>обновления, добавление поддержки M50, как 
> >>раз и привлёк твоё внимание выше.)
> >
> >А насколько эта конструкция совместима 
> >с новой сборочной системой,
> >которая все равно требует явных разных 
> >коммитов для разных бранчей?
> 
>   Полностью совместима: бранч для 
>   бэкпорта конечно потребуется, но 
> обновлять его можно через git pull с простым 
> конфликтом (в %changelog).
> 
>   Небольшая демонстрация на примере 
>   бранчей demo/master (см. 
> <http://git.altlinux.org/people/solo/packages/?p=nut.git;a=shortlog;h=refs/heads/demo/master>) 
>  и demo/4.0 (см. 
> <http://git.altlinux.org/people/solo/packages/?p=nut.git;a=shortlog;h=refs/heads/demo/4.0>):
> 
> 1. Завожу демонстрационный бранч demo/master и 
> обновляю в нём спек до:
> 
> $ git-diff master demo/master|cat
> diff --git a/nut.spec b/nut.spec
> index 8ea317b..fba4aa5 100644
> --- a/nut.spec
> +++ b/nut.spec
> @@ -3,7 +3,7 @@
>  # for set release
>  %define release_pre alt
>  %define release_base_num 1
> -%define release_base_num2 1
> +%define release_base_num2 2
>  %define release_suff %nil
> 
>  # for distr selected
> @@ -629,6 +629,10 @@ fi
>  %_man3dir/*
> 
>  %changelog
> +* Tue Feb 10 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.2
> +- NMU
> +- For backports demonstration.
> +
>  * Mon Feb 09 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.1
>  - NMU
> 
> 2. Завожу демонстрационный бранч demo/4.0:
> 
> $ git-checkout -b demo/4.0 4.0
> 
> 3. $ git-pull . demo/master
> Auto-merged nut.spec
> CONFLICT (content): Merge conflict in nut.spec
> Automatic merge failed; fix conflicts and then commit the result.
> 
> а) получаем обещанный конфликт:
> 
> %changelog
> <<<<<<< HEAD:nut.spec
> * Mon Feb 09 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.0.M40.1
> - NMU
> - Backports to 4.0
> =======
> * Tue Feb 10 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.2
> - NMU
> - For backports demonstration.
> >>>>>>> 2c105c94d9dd31a8be3d2515764216d9ac115d69:nut.spec
> 
> * Mon Feb 09 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.1
> - NMU
> 
> б) решаем его (и обновляя релиз/дату) и 
> комитим.
> 
> 3. На выходе -- корректный бэкпорт:
> 
> $ git-diff 4.0 demo/4.0|cat
> diff --git a/nut.spec b/nut.spec
> index b2dfdce..e6df0d2 100644
> --- a/nut.spec
> +++ b/nut.spec
> @@ -3,7 +3,7 @@
>  # for set release
>  %define release_pre alt
>  %define release_base_num 1
> -%define release_base_num2 1
> +%define release_base_num2 2
>  %define release_suff %nil
> 
>  # for distr selected
> @@ -629,10 +629,17 @@ fi
>  %_man3dir/*
> 
>  %changelog
> -* Mon Feb 09 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.0.M40.1
> +* Tue Feb 10 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.1.M40.1
>  - NMU
>  - Backports to 4.0
> 
> +* Tue Feb 10 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.2
> +- NMU
> +- For backports demonstration.
> +
>  * Mon Feb 09 2009 Aleksey Avdeev <solo@altlinux.ru> 2.2.2-alt1.1
>  - NMU
> 
> -- 
> 
> С уважением. Алексей.

Очень сложно и очень неудобно.  Нет, это ужасно.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: nut-2.2.2
  2009-02-10 14:46         ` Dmitry V. Levin
@ 2009-02-10 14:58           ` Aleksey Avdeev
  2009-02-10 15:21             ` Dmitry V. Levin
  0 siblings, 1 reply; 9+ messages in thread
From: Aleksey Avdeev @ 2009-02-10 14:58 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 155 bytes --]

Dmitry V. Levin пишет:
...
> 
> Очень сложно и очень неудобно.  Нет, это ужасно.

   Есть более удобный вариант?

-- 

С уважением. Алексей.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: nut-2.2.2
  2009-02-10 14:58           ` Aleksey Avdeev
@ 2009-02-10 15:21             ` Dmitry V. Levin
  2009-02-10 16:35               ` Aleksey Avdeev
  0 siblings, 1 reply; 9+ messages in thread
From: Dmitry V. Levin @ 2009-02-10 15:21 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 444 bytes --]

On Tue, Feb 10, 2009 at 05:58:40PM +0300, Aleksey Avdeev wrote:
> Dmitry V. Levin пишет:
> ...
> >
> >Очень сложно и очень неудобно.  Нет, это 
> >ужасно.
> 
>   Есть более удобный вариант?

Просто поменять имя релиза и выполнить add_changelog существенно проще.
Я слышал, что есть утилита, которая делает это ещё проще.

Разводить на каждое изменение в spec-файле по бранчу -- извините, это
злоупотребление git'ом.


-- 
ldv

[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: nut-2.2.2
  2009-02-10 15:21             ` Dmitry V. Levin
@ 2009-02-10 16:35               ` Aleksey Avdeev
  0 siblings, 0 replies; 9+ messages in thread
From: Aleksey Avdeev @ 2009-02-10 16:35 UTC (permalink / raw)
  To: ALT Linux Team development discussions

[-- Attachment #1: Type: text/plain, Size: 2230 bytes --]

Dmitry V. Levin пишет:
> On Tue, Feb 10, 2009 at 05:58:40PM +0300, Aleksey Avdeev wrote:
>> Dmitry V. Levin пишет:
>> ...
>>> Очень сложно и очень неудобно.  Нет, это 
>>> ужасно.
>>   Есть более удобный вариант?
> 
> Просто поменять имя релиза и выполнить add_changelog существенно проще.

1. Имя релиза в бранче у нас жёстко связано с релизом в сизифе, и может 
быть вычислено автоматически. Так, зачем его вводить вручную, рискуя 
нарваться на очепятку (которую можно и вообще не заметить)?

2. В %changelog нужно ещё добавить комментарий. Хотя бы стандартный 
Backports to <>.

   Да, оба эти пункта способна реализовать утилита...

> Я слышал, что есть утилита, которая делает это ещё проще.

   Но утилита не учитывает ситуации, когда в зависимости от бранча нужно 
включать/отключать части спека -- для этого всё равно придётся вводить 
управляемый руками флаг. Так почему не повесить на этот флаг и генерацию 
правильного релиза? Это позволяет сильно сократить поле возможных ошибок 
(за счёт ограничения степеней свободы, т. к. несколько нечётких 
регуляторов сведены в один, имеющий фиксированный набор положений).

   Да, можно отказаться от лишних (связанных с разными бранчами) условий 
в спеке. Можно:

а) разнести бэкпорты по разным бранчам;

б) убрать ветвления в спеках.

   Но тогда потеряем возможность варьировать сборку в отрыве от 
репозитария. Сейчас у меня это возможно: для любого srpm (независимо от 
бранча под который он был собран) целевой дистрибутив можно задать через 
параметры командной строки rpmbuild`а: пакет соберётся с под заданный 
бранч с нужным релизом (да, приэтом он может отличаться от того что уже 
есть в changelog`е).

> 
> Разводить на каждое изменение в spec-файле по бранчу -- извините, это
> злоупотребление git'ом.

1. Это здорова помогает отделять мух от котлет (технические части спека 
от содержательны).

2. Хорошо страхует от потери изменений.

   Да, количество бранчей можно сократить, сделав упор на cherry-pick и 
rebase. Но тогда будет страдать поддерживаемость кода...

PS: Да, код получился довольно объёмным. И я пока не придумал, как его 
разместить по внешним макросам.

-- 

С уважением. Алексей.



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2009-02-10 16:35 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-02-09 22:51 [devel] I: nut-2.2.2 Aleksey Avdeev
2009-02-09 23:09 ` Dmitry V. Levin
2009-02-09 23:40   ` Aleksey Avdeev
2009-02-10  7:24     ` Eugene Prokopiev
2009-02-10  8:10       ` Aleksey Avdeev
2009-02-10 14:46         ` Dmitry V. Levin
2009-02-10 14:58           ` Aleksey Avdeev
2009-02-10 15:21             ` Dmitry V. Levin
2009-02-10 16:35               ` Aleksey Avdeev

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/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 devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git