Summary: | [done] join voropaevdmtr@ | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Team Accounts | Reporter: | DVoropaev <voropaevdmtr> | ||||||||||||||
Component: | join | Assignee: | Gleb F-Malinovskiy <glebfm> | ||||||||||||||
Status: | CLOSED FIXED | QA Contact: | Andrey Cherepanov <cas> | ||||||||||||||
Severity: | normal | ||||||||||||||||
Priority: | P5 | CC: | andy, glebfm, iv, ldv, majioa, mike, nir, nir, shaba, sin, voropaevdmtr, vseleznv | ||||||||||||||
Version: | unspecified | ||||||||||||||||
Hardware: | x86_64 | ||||||||||||||||
OS: | Linux | ||||||||||||||||
URL: | http://altlinux.org/Team/Join/Secretary | ||||||||||||||||
See Also: | https://bugzilla.altlinux.org/show_bug.cgi?id=44029 | ||||||||||||||||
Attachments: |
|
Description
DVoropaev
2020-12-28 11:29:14 MSK
Во вложении вижу только PGP PUBLIC KEY BLOCK; прикреплять лучше двумя отдельными файлами. Created attachment 9116 [details]
SSH pub
Подтверждаю. В качестве первого ознакомления со сборкой предлпженно обновить nmap до версии 7.90. Created attachment 9137 [details]
ssh pub (new)
Created attachment 9138 [details]
gpg pub (new)
Заменил ключи во вложениях на актуальные Обновил nmap до версии 7.91. Ссылка на репозиторий: https://github.com/dvoropaev/nmap (Ответ для DVoropaev на комментарий #7) > Обновил nmap до версии 7.91. > Ссылка на репозиторий: > https://github.com/dvoropaev/nmap Сборку проверил. Выглядит вполне рабочей. Но есть одна незавершённость, требующая согласования - лицензия. Файл COPYING не просто переименовали в LICENSE. Произвошла смена лицензии GPLv2 с исключениями на собственную: Nmap Public Source License Version По этому поводу была соответствующая новость: https://www.opennet.ru/opennews/art.shtml?num=54382 (In reply to Evgeny Sinelnikov from comment #8) > (Ответ для DVoropaev на комментарий #7) > > Обновил nmap до версии 7.91. > > Ссылка на репозиторий: > > https://github.com/dvoropaev/nmap > > Сборку проверил. Выглядит вполне рабочей. Но есть одна незавершённость, > требующая согласования - лицензия. > > Файл COPYING не просто переименовали в LICENSE. Произвошла смена лицензии > GPLv2 с исключениями на собственную: > Nmap Public Source License Version > > По этому поводу была соответствующая новость: > https://www.opennet.ru/opennews/art.shtml?num=54382 nmap >= 7.90 выпускается под несвободной лицензией. Вы можете собрать его рядом под другим именем, если хотите. (Ответ для Dmitry V. Levin на комментарий #9) > > nmap >= 7.90 выпускается под несвободной лицензией. > Вы можете собрать его рядом под другим именем, если хотите. Я бы хотел уточнить два момента по поводу "собрать его рядом под другим именем": - правильно ли я понимаю, что nmap под другим именем собрать в репозиторий-таки можно? Иначе зачем его переименовывать? Локальную сборку можно и под оригинальным именем оставить. - Какую лицензию нужно указывать для переименованном пакете? (In reply to Evgeny Sinelnikov from comment #10) > (Ответ для Dmitry V. Levin на комментарий #9) > > > > nmap >= 7.90 выпускается под несвободной лицензией. > > Вы можете собрать его рядом под другим именем, если хотите. > > Я бы хотел уточнить два момента по поводу "собрать его рядом под другим > именем": > - правильно ли я понимаю, что nmap под другим именем собрать в > репозиторий-таки можно? Иначе зачем его переименовывать? Локальную сборку > можно и под оригинальным именем оставить. Моё прочтение лицензии https://svn.nmap.org/nmap/LICENSE таково, что распространие этой версии nmap в составе репозитория Sisyphus разрешено. > - Какую лицензию нужно указывать для переименованном пакете? Полное название лицензии: Nmap Public Source License Version 0.93 В тэге License предлагаю написать ALT-NPSL-0.93 (надо уточнить версию этой лицензии, она менялась) (In reply to Dmitry V. Levin from comment #11) > Моё прочтение лицензии https://svn.nmap.org/nmap/LICENSE таково, что > распространие этой версии nmap в составе репозитория Sisyphus разрешено. Моё тоже. Однако я не понимаю, является ли дистрибутив, обладающий инсталятором (такой, как дистрибутивы ALT на ISO) derivative work согласно пункту 3 (я читаю версию 0.93). На мой взгляд, скорее да, чем нет, но тут конечно нужно прочтене юриста. Если такой дистрибутив, включающий nmap, подпадает под определение derivative work в NPSL, то он, как составное произведение, должен распространяться под лицензией, совместимой с GPL. Мне кажется, по этому поводу в спеке нужен какой-то warning. http://altlinux.org/regular (sisyphus), в т.ч. http://altlinux.org/rescue, и http://altlinux.org/starterkits (сейчас p9) у нас именно под GPL и распространяются. Ну, на всякий. > nmap >= 7.90 выпускается под несвободной лицензией.
> Вы можете собрать его рядом под другим именем, если хотите.
Правильно ли я понимаю. что могу собрать пакет под именем (например network-mapper), при этом имена бинарников оставить прежними?
Если да, то какую приложить лицензию?
(In reply to DVoropaev from comment #14) > > nmap >= 7.90 выпускается под несвободной лицензией. > > Вы можете собрать его рядом под другим именем, если хотите. > > Правильно ли я понимаю. что могу собрать пакет под именем (например > network-mapper) Я бы сделал в имени пакета более явным, что это тот же nmap, но под другой лицензией -- например, назвав пакет nmap-NPSL. > при этом имена бинарников оставить прежними? Было бы удобно оставить имена бинарников прежними, расставив Conflicts: на соответсвующие существующие пакеты, но кажется запрет на duplicate provides не даст поступить так просто. > Если да, то какую приложить лицензию? Ту, под которой лицензирован собираемый код. Собрал из репозитория u-boot-tools утилиты fw_printenv и fw_setenv, позволяющие получить доступ к настройкам U-Boot в виде отельного пакета u-boot-tools-env (https://github.com/dvoropaev/uboot-env). Мне эти утилиты необходимы для выполнения работ на BFK3.1 на архитектуре mipsel, на котором их протестировал. (Ответ для DVoropaev на комментарий #16) > Собрал из репозитория u-boot-tools утилиты fw_printenv и fw_setenv, > позволяющие получить доступ к настройкам U-Boot в виде отельного пакета > u-boot-tools-env (https://github.com/dvoropaev/uboot-env). > Мне эти утилиты необходимы для выполнения работ на BFK3.1 на архитектуре > mipsel, на котором их протестировал. С Сергеем Большаковым было принято решение включить fw_printenv и fw_setenv в основной пакет u-boot-tools. Сделал коммит с необходимыми изменениями: https://github.com/dvoropaev/uboot-env/commit/8d655154925a1e3a75c182deda83715e6f0c89b4 (Ответ для Evgeny Sinelnikov на комментарий #3) > Подтверждаю. (Ответ для DVoropaev на комментарий #4) > Создано вложение 9137 [details] [подробности] > ssh pub (new) (Ответ для DVoropaev на комментарий #5) > Создано вложение 9138 [details] [подробности] > gpg pub (new) Ok. собрал nmap версии 7.91 под именем nmap-NPSL https://github.com/dvoropaev/nmap_gear/commit/248412248ceae82068d5a040fbdc450a82b79006 Думаю, что пора переходить к следующему этапу. Со своей стороны выражаю высокую оценку готовности Дмитрия переходить к разбору сборочной инфраструктуры не только на уровне сборки пакетов, но но и на уровне освоение сборочницы. ssh ключ на gitery.alt зарегистрирован. ssh ключ на gyle.alt зарегистрирован. Адрес для пересылки создан. T/J/S -> 2.4. Переходим к 3 этапу. 2voropaevdmtr@ - отправь все свои текущие пакеты на git.alt Created attachment 9248 [details]
Актуальный pub gpg
Актуальный pub gpg
(Ответ для Evgeny Sinelnikov на комментарий #22) > Переходим к 3 этапу. > 2voropaevdmtr@ - отправь все свои текущие пакеты на git.alt http://git.altlinux.org/people/voropaevdmtr/packages/ (In reply to DVoropaev from comment #23) > Created attachment 9248 [details] > Актуальный pub gpg > > Актуальный pub gpg Что-то случилось? Непонятно, как переходить к п. 3.1 при изменяющихся ключах. (Ответ для Dmitry V. Levin на комментарий #25) > (In reply to DVoropaev from comment #23) > > Created attachment 9248 [details] [подробности] [details] > > Актуальный pub gpg > > > > Актуальный pub gpg > > Что-то случилось? Непонятно, как переходить к п. 3.1 при изменяющихся > ключах. Да, Дима, поясни, что случилось с твоим ключом? Утерян пароль? (Ответ для Evgeny Sinelnikov на комментарий #26) > (Ответ для Dmitry V. Levin на комментарий #25) > > (In reply to DVoropaev from comment #23) > > > Created attachment 9248 [details] [подробности] [details] > > > Актуальный pub gpg > > > > > > Актуальный pub gpg > > > > Что-то случилось? Непонятно, как переходить к п. 3.1 при изменяющихся > > ключах. > > Да, Дима, поясни, что случилось с твоим ключом? Утерян пароль? Утерян закрытый ключ gpg (Ответ для DVoropaev на комментарий #27) > (Ответ для Evgeny Sinelnikov на комментарий #26) .. > > Да, Дима, поясни, что случилось с твоим ключом? Утерян пароль? > > Утерян закрытый ключ gpg Новый ключ сохранён на альтернативный носитель? У тебя в репозитории лежат пакеты - нужно их отправить на сборку в две таски. Одна для minipro, другая - для jekyll. (Ответ для Evgeny Sinelnikov на комментарий #28) > (Ответ для DVoropaev на комментарий #27) > > (Ответ для Evgeny Sinelnikov на комментарий #26) > .. > > > Да, Дима, поясни, что случилось с твоим ключом? Утерян пароль? > > > > Утерян закрытый ключ gpg > > Новый ключ сохранён на альтернативный носитель? Да, сохранен Сохранил ключи на альтернативном носителе, проверил на отдельном хосте. Прошу прощения за предоставленные неудобства. Подготовил 12 пакетов для сборки. http://git.altlinux.org/people/voropaevdmtr/packages/ Создал таску в gyle, пытаюсь добавить пакеты и получаю: ssh gyle task add 268845 repo gem-pathutil.git 0.16.2-alt1 gpg: Signature made Fri Apr 2 11:38:36 2021 UTC gpg: using RSA key 0xC945037B61C45E58 gpg: Can't check signature: public key not found task add: 0.16.2-alt1: tag signature verification failure Пакеты собраны (gem-пакеты с jekyll и програматор minipro), для продолжения прошу зарегистрировать GPG-ключ кандидата в пакет alt-gpgkeys. Пакет alt-gpgkeys обновлён. T/J/S -> 3.4. Сделал таски в gyle: #268972 - jekyll и gem'ы для него #268974 - minipro Пакеты собрались. Просьба проверить Пакеты в вышеуказанных тасках собрались и ушли в сизиф (Ответ для DVoropaev на комментарий #35) > Пакеты в вышеуказанных тасках собрались и ушли в сизиф "%_mandir/man1/%name.*" -> %_man1dir/%name.* "/usr/share/minipro/infoic.xml" -> %_datadir/%name/ (чтобы при удалении пакета не остался каталог /usr/share/minipro/). (Ответ для Andrew Vasilyev на комментарий #36) > (Ответ для DVoropaev на комментарий #35) > > Пакеты в вышеуказанных тасках собрались и ушли в сизиф > > "%_mandir/man1/%name.*" -> %_man1dir/%name.* > > "/usr/share/minipro/infoic.xml" -> %_dat269201]adir/%name/ > (чтобы при удалении пакета не остался каталог /usr/share/minipro/). Исправил. таска 269201 (Ответ для Andrew Vasilyev на комментарий #36) > (Ответ для DVoropaev на комментарий #35) > > Пакеты в вышеуказанных тасках собрались и ушли в сизиф > > "%_mandir/man1/%name.*" -> %_man1dir/%name.* > > "/usr/share/minipro/infoic.xml" -> %_dat269201]adir/%name/ > (чтобы при удалении пакета не остался каталог /usr/share/minipro/). Исправил. таска 269201 Пользователи жалуются, что в результате коммита задания [#270473] DONE (try 3) ruby.git=2.7.2-alt1.2 в Сизифе у ruby поменялся ABI и все бинарные модули, собранные с прежним ruby, сломались. Просьба срочно это исправить. (In reply to Dmitry V. Levin from comment #39) > Пользователи жалуются, что в результате коммита задания > [#270473] DONE (try 3) ruby.git=2.7.2-alt1.2 > в Сизифе у ruby поменялся ABI и все бинарные модули, собранные с прежним > ruby, сломались. > > Просьба срочно это исправить. Тем, кто что-то знает о том, что сломалось и как это проявляется, просьба сообщить. Created attachment 9321 [details]
abipkgdiff
abipkgdiff -t /archive/repo/sisyphus/date/2021/04/23/files/x86_64/RPMS/libruby-2.7.2-alt1.1.x86_64.rpm /ALT/Sisyphus/files/x86_64/RPMS/libruby-2.7.2-alt1.2.x86_64.rpm --d1 /archive/repo/sisyphus/date/2021/04/23/files/x86_64/RPMS/libruby-debuginfo-2.7.2-alt1.1.x86_64.rpm --d2 /ALT/Sisyphus/files/x86_64/RPMS/libruby-debuginfo-2.7.2-alt1.2.x86_64.rpm
При сборке opennebula с этим ruby, ronn перестал генерировать man page с таким выводом: ~/RPM/BUILD/opennebula-5.12.0.4/share/man ~/RPM/BUILD/opennebula-5.12.0.4 + ./build.sh oneacct(1) -- OpenNebula Accounting Tool roff: ./oneacct.1 html: ./oneacct.1.html +man,toc oneacl(1) -- manages OpenNebula ACLs roff: ./oneacl.1 html: ./oneacl.1.html +man,toc onedb(1) -- OpenNebula database migration tool Ruby gem sequel is needed for this operation: $ sudo gem install sequel roff: ./onedb.1 html: ./onedb.1.html +man,toc onegroup(1) -- manages OpenNebula groups roff: ./onegroup.1 html: ./onegroup.1.html +man,toc onehost(1) -- manages OpenNebula hosts roff: ./onehost.1 html: ./onehost.1.html +man,toc onehook(1) -- manages OpenNebula hooks roff: ./onehook.1 <internal:pack>:257: [BUG] Segmentation fault at 0x0000000000000020 ruby 2.7.2p137 (2020-10-01 revision 647ee6f091) [x86_64-linux] -- Control frame information ----------------------------------------------- c:0017 p:0003 s:0094 e:000093 METHOD <internal:pack>:257 [FINISH] c:0016 p:---- s:0089 e:000088 CFUNC :fast_xs c:0015 p:0036 s:0085 e:000081 METHOD /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/traverse.rb:827 c:0014 p:0017 s:0076 e:000075 BLOCK /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:417 [FINISH] c:0013 p:---- s:0072 e:000071 CFUNC :each c:0012 p:0014 s:0068 e:000067 METHOD /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:416 c:0011 p:0024 s:0064 e:000063 METHOD /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:309 c:0010 p:0017 s:0060 e:000059 METHOD /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:215 c:0009 p:0013 s:0056 e:000055 METHOD /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:251 c:0008 p:0016 s:0051 e:000049 METHOD /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:227 c:0007 p:0018 s:0045 e:000044 METHOD /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:221 c:0006 p:0101 s:0040 e:000039 BLOCK /usr/bin/ronn:191 [FINISH] c:0005 p:---- s:0034 e:000033 CFUNC :each c:0004 p:0098 s:0030 e:000029 BLOCK /usr/bin/ronn:181 [FINISH] c:0003 p:---- s:0025 e:000024 CFUNC :each c:0002 p:0404 s:0021 E:000b78 EVAL /usr/bin/ronn:167 [FINISH] c:0001 p:0000 s:0003 E:002100 (none) [FINISH] -- Ruby level backtrace information ---------------------------------------- /usr/bin/ronn:167:in `<main>' /usr/bin/ronn:167:in `each' /usr/bin/ronn:181:in `block in <main>' /usr/bin/ronn:181:in `each' /usr/bin/ronn:191:in `block (2 levels) in <main>' /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:221:in `convert' /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:227:in `to_roff' /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:251:in `to_html_fragment' /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:215:in `html' /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:309:in `process_html!' /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:416:in `html_filter_heading_anchors' /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:416:in `each' /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb:417:in `block in html_filter_heading_anchors' /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/traverse.rb:827:in `set_attribute' /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/traverse.rb:827:in `fast_xs' <internal:pack>:257:in `unpack' -- Machine register context ------------------------------------------------ RIP: 0x00007f6556e5fbde RBP: 0x0000000000000000 RSP: 0x00007ffd7cb55f88 RAX: 0x000055960e3a09f8 RBX: 0x000055960e320540 RCX: 0x0000000000000094 RDX: 0x00007ffd7cb55fa8 RDI: 0x0000000000000000 RSI: 0x000000000000009b R8: 0x0000000000000001 R9: 0x0000000000000000 R10: 0x00007f6556c62116 R11: 0x00007f6556e17d50 R12: 0x0000000000000c71 R13: 0x000055960e324700 R14: 0x0000000000000c71 R15: 0x0000000000000001 EFL: 0x0000000000010246 -- C level backtrace information ------------------------------------------- /usr/lib64/libruby.so.2.7(0x7f6556e8480a) [0x7f6556e8480a] /usr/lib64/libruby.so.2.7(0x7f6556cf5a77) [0x7f6556cf5a77] /usr/lib64/libruby.so.2.7(0x7f6556e013a9) [0x7f6556e013a9] /lib64/libc.so.6(0x7f6556ac4330) [0x7f6556ac4330] /usr/lib64/libruby.so.2.7(0x7f6556e5fbde) [0x7f6556e5fbde] /usr/lib64/libruby.so.2.7(0x7f6556e6da8f) [0x7f6556e6da8f] /usr/lib64/libruby.so.2.7(0x7f6556e6dc5d) [0x7f6556e6dc5d] /usr/lib64/libruby.so.2.7(0x7f6556d8a183) [0x7f6556d8a183] /usr/lib64/libruby.so.2.7(0x7f6556d8a5c9) [0x7f6556d8a5c9] /usr/lib64/libruby.so.2.7(rb_string_value+0x32) [0x7f6556e1aaf2] /usr/lib64/libruby.so.2.7(0x7f6556d8e28f) [0x7f6556d8e28f] /usr/lib64/libruby.so.2.7(0x7f6556e6fdbf) [0x7f6556e6fdbf] /usr/lib64/libruby.so.2.7(rb_vm_exec+0x1bb) [0x7f6556e7423b] /usr/lib64/libruby.so.2.7(rb_vm_call0+0xbf) [0x7f6556e77eef] /usr/lib64/libruby.so.2.7(rb_vm_call_kw+0x68) [0x7f6556e782e8] /usr/lib64/libruby.so.2.7(rb_funcallv+0xb8) [0x7f6556e79f88] /usr/lib/ruby/gems/2.7.0/extensions/x86_64-linux/2.7.0/hpricot-0.8.6/fast_xs.so(0x7f6553290283) [0x7f6553290283] /usr/lib64/libruby.so.2.7(rb_vrescue2+0xc7) [0x7f6556cfbfa7] /usr/lib64/libruby.so.2.7(rb_rescue2+0x8a) [0x7f6556cfc1ba] /usr/lib/ruby/gems/2.7.0/extensions/x86_64-linux/2.7.0/hpricot-0.8.6/fast_xs.so(0x7f65532902c7) [0x7f65532902c7] /usr/lib64/libruby.so.2.7(0x7f6556e63df2) [0x7f6556e63df2] /usr/lib64/libruby.so.2.7(0x7f6556e5eac6) [0x7f6556e5eac6] /usr/lib64/libruby.so.2.7(0x7f6556e6e9f4) [0x7f6556e6e9f4] /usr/lib64/libruby.so.2.7(rb_vm_exec+0x1bb) [0x7f6556e7423b] /usr/lib64/libruby.so.2.7(rb_yield+0x75) [0x7f6556e806b5] /usr/lib64/libruby.so.2.7(rb_ary_each+0x3c) [0x7f6556c85f2c] /usr/lib64/libruby.so.2.7(0x7f6556e63df2) [0x7f6556e63df2] /usr/lib64/libruby.so.2.7(0x7f6556e5eac6) [0x7f6556e5eac6] /usr/lib64/libruby.so.2.7(0x7f6556e6ea63) [0x7f6556e6ea63] /usr/lib64/libruby.so.2.7(rb_vm_exec+0x1bb) [0x7f6556e7423b] /usr/lib64/libruby.so.2.7(rb_yield+0x75) [0x7f6556e806b5] /usr/lib64/libruby.so.2.7(rb_ary_each+0x3c) [0x7f6556c85f2c] /usr/lib64/libruby.so.2.7(0x7f6556e63df2) [0x7f6556e63df2] /usr/lib64/libruby.so.2.7(0x7f6556e5eac6) [0x7f6556e5eac6] /usr/lib64/libruby.so.2.7(0x7f6556e6ea63) [0x7f6556e6ea63] /usr/lib64/libruby.so.2.7(rb_vm_exec+0x1bb) [0x7f6556e7423b] /usr/lib64/libruby.so.2.7(rb_yield+0x75) [0x7f6556e806b5] /usr/lib64/libruby.so.2.7(rb_ary_each+0x3c) [0x7f6556c85f2c] /usr/lib64/libruby.so.2.7(0x7f6556e63df2) [0x7f6556e63df2] /usr/lib64/libruby.so.2.7(0x7f6556e5eac6) [0x7f6556e5eac6] /usr/lib64/libruby.so.2.7(0x7f6556e6ea63) [0x7f6556e6ea63] /usr/lib64/libruby.so.2.7(rb_vm_exec+0x1bb) [0x7f6556e7423b] /usr/lib64/libruby.so.2.7(0x7f6556cf9b70) [0x7f6556cf9b70] /usr/lib64/libruby.so.2.7(ruby_run_node+0x48) [0x7f6556cfdf48] /usr/bin/ruby(0x55960d30d10b) [0x55960d30d10b] /lib64/libc.so.6(__libc_start_main+0xcd) [0x7f6556aaee1d] /usr/bin/ruby(_start+0x2a) [0x55960d30d15a] -- Other runtime information ----------------------------------------------- * Loaded script: /usr/bin/ronn * Loaded features: 0 enumerator.so 1 thread.rb 2 rational.so 3 complex.so 4 ruby2_keywords.rb 5 /usr/lib/ruby/x86_64-linux/enc/encdb.so 6 /usr/lib/ruby/x86_64-linux/enc/trans/transdb.so 7 /usr/lib/ruby/x86_64-linux/rbconfig.rb 8 /usr/lib/ruby/rubygems/compatibility.rb 9 /usr/lib/ruby/rubygems/defaults.rb 10 /usr/lib/ruby/rubygems/deprecate.rb 11 /usr/lib/ruby/rubygems/errors.rb 12 /usr/lib/ruby/rubygems/version.rb 13 /usr/lib/ruby/rubygems/requirement.rb 14 /usr/lib/ruby/rubygems/platform.rb 15 /usr/lib/ruby/rubygems/basic_specification.rb 16 /usr/lib/ruby/rubygems/stub_specification.rb 17 /usr/lib/ruby/rubygems/util.rb 18 /usr/lib/ruby/rubygems/text.rb 19 /usr/lib/ruby/rubygems/user_interaction.rb 20 /usr/lib/ruby/rubygems/specification_policy.rb 21 /usr/lib/ruby/rubygems/util/list.rb 22 /usr/lib/ruby/rubygems/specification.rb 23 /usr/lib/ruby/rubygems/exceptions.rb 24 /usr/lib/ruby/rubygems/bundler_version_finder.rb 25 /usr/lib/ruby/rubygems/dependency.rb 26 /usr/lib/ruby/rubygems/core_ext/kernel_gem.rb 27 /usr/lib/ruby/x86_64-linux/monitor.so 28 /usr/lib/ruby/monitor.rb 29 /usr/lib/ruby/rubygems/core_ext/kernel_require.rb 30 /usr/lib/ruby/rubygems/core_ext/kernel_warn.rb 31 /usr/lib/ruby/rubygems.rb 32 /usr/lib/ruby/rubygems/path_support.rb 33 /usr/lib/ruby/did_you_mean/version.rb 34 /usr/lib/ruby/did_you_mean/core_ext/name_error.rb 35 /usr/lib/ruby/did_you_mean/levenshtein.rb 36 /usr/lib/ruby/did_you_mean/jaro_winkler.rb 37 /usr/lib/ruby/did_you_mean/spell_checker.rb 38 /usr/lib/ruby/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb 39 /usr/lib/ruby/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb 40 /usr/lib/ruby/did_you_mean/spell_checkers/name_error_checkers.rb 41 /usr/lib/ruby/did_you_mean/spell_checkers/method_name_checker.rb 42 /usr/lib/ruby/did_you_mean/spell_checkers/key_error_checker.rb 43 /usr/lib/ruby/did_you_mean/spell_checkers/null_checker.rb 44 /usr/lib/ruby/did_you_mean/formatters/plain_formatter.rb 45 /usr/lib/ruby/did_you_mean/tree_spell_checker.rb 46 /usr/lib/ruby/did_you_mean.rb 47 /usr/lib/ruby/x86_64-linux/date_core.so 48 /usr/lib/ruby/gems/2.7.0/gems/date-3.0.0/lib/date.rb 49 /usr/lib/ruby/optparse.rb 50 /usr/lib/ruby/gems/2.7.0/gems/rdiscount-2.2.0.2/lib/rdiscount.so 51 /usr/lib/ruby/gems/2.7.0/gems/rdiscount-2.2.0.2/lib/rdiscount.rb 52 /usr/lib/ruby/gems/2.7.0/extensions/x86_64-linux/2.7.0/hpricot-0.8.6/hpricot_scan.so 53 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/tag.rb 54 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/modules.rb 55 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/elements.rb 56 /usr/lib/ruby/uri/version.rb 57 /usr/lib/ruby/uri/rfc2396_parser.rb 58 /usr/lib/ruby/uri/rfc3986_parser.rb 59 /usr/lib/ruby/uri/common.rb 60 /usr/lib/ruby/uri/generic.rb 61 /usr/lib/ruby/uri/file.rb 62 /usr/lib/ruby/uri/ftp.rb 63 /usr/lib/ruby/uri/http.rb 64 /usr/lib/ruby/uri/https.rb 65 /usr/lib/ruby/uri/ldap.rb 66 /usr/lib/ruby/uri/ldaps.rb 67 /usr/lib/ruby/uri/mailto.rb 68 /usr/lib/ruby/uri.rb 69 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/traverse.rb 70 /usr/lib/ruby/prettyprint.rb 71 /usr/lib/ruby/pp.rb 72 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/inspect.rb 73 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/htmlinfo.rb 74 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/parse.rb 75 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/tags.rb 76 /usr/lib/ruby/gems/2.7.0/extensions/x86_64-linux/2.7.0/hpricot-0.8.6/fast_xs.so 77 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/blankslate.rb 78 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot/builder.rb 79 /usr/lib/ruby/gems/2.7.0/gems/hpricot-0.8.6/lib/hpricot.rb 80 /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn.rb 81 /usr/lib/ruby/time.rb 82 /usr/lib/ruby/cgi/core.rb 83 /usr/lib/ruby/x86_64-linux/cgi/escape.so 84 /usr/lib/ruby/cgi/util.rb 85 /usr/lib/ruby/cgi/cookie.rb 86 /usr/lib/ruby/cgi.rb 87 /usr/lib/ruby/set.rb 88 /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/utils.rb 89 /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/roff.rb 90 /usr/lib/ruby/gems/2.5.0/gems/mustache-1.1.1/lib/mustache/enumerable.rb 91 /usr/lib/ruby/x86_64-linux/strscan.so 92 /usr/lib/ruby/gems/2.5.0/gems/mustache-1.1.1/lib/mustache/parser.rb 93 /usr/lib/ruby/gems/2.5.0/gems/mustache-1.1.1/lib/mustache/generator.rb 94 /usr/lib/ruby/gems/2.5.0/gems/mustache-1.1.1/lib/mustache/template.rb 95 /usr/lib/ruby/gems/2.5.0/gems/mustache-1.1.1/lib/mustache/context_miss.rb 96 /usr/lib/ruby/gems/2.5.0/gems/mustache-1.1.1/lib/mustache/context.rb 97 /usr/lib/ruby/gems/2.5.0/gems/mustache-1.1.1/lib/mustache/settings.rb 98 /usr/lib/ruby/gems/2.5.0/gems/mustache-1.1.1/lib/mustache/utils.rb 99 /usr/lib/ruby/gems/2.5.0/gems/mustache-1.1.1/lib/mustache.rb 100 /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/template.rb 101 /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/document.rb 102 /usr/lib/ruby/gems/2.7.0/gems/ronn-0.7.3/lib/ronn/index.rb * Process memory map: .... - вырезал, это наверно уже не интересно. После пересборки gem-hpricot и gem-rdiscount, ronn заработал и успешно сгенерил man pages в opennebula. Какие еще ruby модули пострадали, неизвестно. (Ответ для Dmitry V. Levin на комментарий #41) > Создано вложение 9321 [details] [подробности] > abipkgdiff > > abipkgdiff -t > /archive/repo/sisyphus/date/2021/04/23/files/x86_64/RPMS/libruby-2.7.2-alt1. > 1.x86_64.rpm /ALT/Sisyphus/files/x86_64/RPMS/libruby-2.7.2-alt1.2.x86_64.rpm > --d1 > /archive/repo/sisyphus/date/2021/04/23/files/x86_64/RPMS/libruby-debuginfo-2. > 7.2-alt1.1.x86_64.rpm --d2 > /ALT/Sisyphus/files/x86_64/RPMS/libruby-debuginfo-2.7.2-alt1.2.x86_64.rpm А где выполняется это команда? На каком узле? На team? Можно мой ключ прописать на нём, если да? (In reply to Evgeny Sinelnikov from comment #43) > (Ответ для Dmitry V. Levin на комментарий #41) > > Создано вложение 9321 [details] [подробности] > > abipkgdiff > > > > abipkgdiff -t > > /archive/repo/sisyphus/date/2021/04/23/files/x86_64/RPMS/libruby-2.7.2-alt1. > > 1.x86_64.rpm /ALT/Sisyphus/files/x86_64/RPMS/libruby-2.7.2-alt1.2.x86_64.rpm > > --d1 > > /archive/repo/sisyphus/date/2021/04/23/files/x86_64/RPMS/libruby-debuginfo-2. > > 7.2-alt1.1.x86_64.rpm --d2 > > /ALT/Sisyphus/files/x86_64/RPMS/libruby-debuginfo-2.7.2-alt1.2.x86_64.rpm > > А где выполняется это команда? На каком узле? На team? Нет, но на team, по идее, все эти файлы видны под этими именами. Вывод этой команды скорее говорит о том, что в ABI, по мнению abipkgdiff, ничего не поменялось. > Можно мой ключ прописать на нём, если да? Можно, но я не знаю, кто сейчас этим занимается. (In reply to Alexey Shabalin from comment #42) > При сборке opennebula с этим ruby, ronn перестал генерировать man page с > таким выводом: Сделал тестовую сборку ruby-2.7.2-alt1.2 из Сизифа на срезе Сизифа от 13 апреля (с прежним bison 3.0.5), описанная проблема воспроизвелась, т.е. она не связана с обновлением пакета bison в Сизифе. Поскольку предыдущая сборка ruby-2.7.2-alt1.1 была сделана на предыдущем компиляторе gcc9, можно предположить, что проблема неустановленного изменения ABI каким-то образом связана со сменой компилятора. Я пока отложил задание #270587 PENDING #1 sisyphus/majioa gem-*, в котором пересобирается большое число пакетов, до выяснения природы произошедшего. Видимо, надо было завести отдельный багрепорт про всю эту историю с ruby. В общем, проблема такая: - ruby 2.7.2-alt1.1 последний раз собирался на на старом bison-2.7.4 четыре месяца назад; http://git.altlinux.org/gears/r/ruby.git - новый bison-2.7.5 прилетел два месяца назад; http://git.altlinux.org/gears/b/bison.git - с новым bison была ошибка: https://bugs.ruby-lang.org/issues/17582 - в фиксе, который это чинит, указано: Although it was used just to suppress an "unsed argument" warning in the same manner as other bison-provided functions, it has been dropped since Bision 3.7.5. And we always suppress that warnings. - Если проблема в gcc, то, видимо пересобирать нужно теперь все ruby-пакеты. В общем, да - нужно разбираться. Отправил на сборку новый релиз - давайте с ним проверим ещё: #270592 BUILDING #1 [locked] [test-only] sisyphus ruby.git=2.7.3-alt1 С этой сборкой проблема, вроде, не воспроизводится: #270592 TESTED #2 [test-only] sisyphus ruby.git=2.7.3-alt1.3 sin@xpi opennebula $ git show sisyphus | head commit 5f96d49273e796ea62673a9c1f26b74c1d855159 Author: Alexey Shabalin <shaba@altlinux.org> Date: Sun Nov 22 07:13:25 2020 +0300 5.12.0.4-alt1 - 5.12.0.4 - drop support sysV init scripts ... Wrote: /usr/src/RPM/SRPMS/opennebula-5.12.0.4-alt1.src.rpm (w2T8.xzdio) Wrote: /usr/src/RPM/RPMS/x86_64/opennebula-server-5.12.0.4-alt1.x86_64.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/noarch/opennebula-common-5.12.0.4-alt1.noarch.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/noarch/gem-opennebula-5.12.0.4-alt1.noarch.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/noarch/gem-opennebula-cli-5.12.0.4-alt1.noarch.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/noarch/python3-module-opennebula-5.12.0.4-alt1.noarch.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/noarch/opennebula-sunstone-5.12.0.4-alt1.noarch.rpm (w2T8.xzdio) Wrote: /usr/src/RPM/RPMS/noarch/opennebula-gate-5.12.0.4-alt1.noarch.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/noarch/opennebula-flow-5.12.0.4-alt1.noarch.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/noarch/opennebula-java-5.12.0.4-alt1.noarch.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/noarch/opennebula-node-kvm-5.12.0.4-alt1.noarch.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/x86_64/opennebula-node-firecracker-5.12.0.4-alt1.x86_64.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/x86_64/opennebula-node-lxd-5.12.0.4-alt1.x86_64.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/noarch/opennebula-provision-5.12.0.4-alt1.noarch.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/x86_64/opennebula-server-debuginfo-5.12.0.4-alt1.x86_64.rpm (w2T8.xzdio) Wrote: /usr/src/RPM/RPMS/x86_64/opennebula-node-firecracker-debuginfo-5.12.0.4-alt1.x86_64.rpm (w2.lzdio) Wrote: /usr/src/RPM/RPMS/x86_64/opennebula-node-lxd-debuginfo-5.12.0.4-alt1.x86_64.rpm (w2.lzdio) [builder@localhost SPECS]$ rpm -q ruby ruby-2.7.3-alt1.3.x86_64 Отправляю в сизиф. (In reply to Evgeny Sinelnikov from comment #47) > В общем, проблема такая: > > - ruby 2.7.2-alt1.1 последний раз собирался на на старом bison-2.7.4 четыре > месяца назад; > http://git.altlinux.org/gears/r/ruby.git На bison-3.0.5 и gcc9. > - новый bison-2.7.5 прилетел два месяца назад; > http://git.altlinux.org/gears/b/bison.git bison 3.7.6 в Сизифе с 13-го апреля, до этого долго был 3.0.5. > - с новым bison была ошибка: > https://bugs.ruby-lang.org/issues/17582 > > - в фиксе, который это чинит, указано: > Although it was used just to suppress an "unsed argument" warning > in the same manner as other bison-provided functions, it has been > dropped since Bision 3.7.5. And we always suppress that > warnings. Это не играет роли. Я же написал, что проблема не связана с обновлением пакета bison в Сизифе. > - Если проблема в gcc, то, видимо пересобирать нужно теперь все ruby-пакеты. Всё указывает на какие-то неустановленные внутренние изменения в ruby, предположительно, в результате смены gcc. Но пересборки всех ruby-пакетов недостаточно, потому что у пересобранных пакетов не поменяется ничего, что могло бы их отличить от непересобранных, помимо disttag, это полностью уничтожит возможность точечных обновлений. (In reply to Evgeny Sinelnikov from comment #48) > С этой сборкой проблема, вроде, не воспроизводится: > #270592 TESTED #2 [test-only] sisyphus ruby.git=2.7.3-alt1.3 Алексей уже пересобрал какие-то из gem-пакетов с тем ruby, который был собран вчера, так что проверять надо на срезе Сизифа, где этого ещё не было. (In reply to Evgeny Sinelnikov from comment #48) > ruby-2.7.3-alt1.3.x86_64 > > Отправляю в сизиф. На этой сборке ruby и позавчерашнем снапшоте Сизифа ronn больше не падает. Собрал ZMAP для сизифа, прошу посмотреть. #272314 (Ответ для DVoropaev на комментарий #51) > Собрал ZMAP для сизифа, прошу посмотреть. #272314 1. По поводу http://git.altlinux.org/tasks/272314/gears/100/git?p=git;a=commitdiff;h=800e008534142b3bb813ca2165d547e08883a9b7 эксперты по cmake пишут: "Возможно, лучше не на ${CMAKE_BINARY_DIR}/src, а на ${CMAKE_CURRENT_BINARY_DIR}. Потому что, если в CMakeLists писать add_subdirectory(name), то ${cmake_current_*_dir} обе изменяются на соотв. подкаталоги по имени name из build tree и source tree соответственно; таким образом иерархия подкаталогов и файлов в build tree повторяет таковую в source tree, но вместо исходников генераты. В выводе find(1) это более-менее видно хорошо, если убрать из выдачи служебные файлы http://git.altlinux.org/tasks/272314/gears/100/git?p=git;a=blob;f=CMakeLists.txt;h=8bd825ff8239b493b601bf8b617321713346ddde;hb=800e008534142b3bb813ca2165d547e08883a9b7#l123 На 123 строке: add_subdirectory(src). CMake сделает в build tree такой же каталог src, откроет в дереве исходников src/CMakeLists.txt и предполагает, что артефакты-результаты сборки лягут в новосозданный каталог; вся автоматика так и делает, так и вызывает всякие компиляторы. " 2. И почему не %_sysconfdir/%name вместо %_sysconfdir/zmap/blacklist.conf %_sysconfdir/zmap/zmap.conf ? Исправил замечания для zmap. Прошу посмотреть #283762 (Ответ для DVoropaev на комментарий #53) > Исправил замечания для zmap. Прошу посмотреть #283762 1. IMHO, нужно разнести по разным коммитам: один с исправлением src/CMakeLists.txt, следующий со всем ALT-specific (некоторые сделали бы из этого ещё 3 коммита: .gear/, spec, remotes :-) ). 2. Для упаковки man-ов обычно используются макросы %_man[1-8]dir, в данном случае, %_man1dir, т.е. %_man1dir/zblacklist.1* и т.п. (указывать расширение тоже не стОит - вдруг оно поменяется упаковщиком?). Исправил #283985 (Ответ для DVoropaev на комментарий #55) > Исправил #283985 Про man забыли :( Исправил, отправил на сборку. #284043, пока находится в состоянии awaiting (Ответ для DVoropaev на комментарий #57) > Исправил, отправил на сборку. #284043, пока находится в состоянии awaiting Теперь ментору нужно переводить процесс дальше (на ди-ментора?). :-) Призываю ди-ментора. Обращаю внимание на рассылку devel-newbies@: http://lists.altlinux.org/mailman/listinfo/devel-newbies "даже если не собираетесь прямо сейчас вступать в команду, можно подписаться на неё и какое-то время просто почитать, о чём спрашивают и что отвечают. Там же можно искать и ментора среди тех, чьи ответы оказались понятны и полезны." Призван ещё один человек (vseleznv@) для независимой оценки готовности кандидата. T/J/S -> 4.2. По уже собранным пакетам серьёзных замечаний нет. Могу отметить следующие: > Packager: Dmitriy Voropaev <voropaevdmtr@altlinux.org> Обычно не принято писать Packager в спеке, он автоматически прописывается при сборке пакета. > diff: @version@:. . name=@name@-@version@-@release@.patch Тут достаточно написать `diff: @version@:. .`, т.к. это формат имени патча по умолчанию. Более существенные замечания: > %_sysconfdir/bash_completion.d/ Автодополнения для шеллов нужно упаковывать в /usr/share (в /usr/share/bash-completion/completions для баша в частности). А конфиги лучше указывать в начале секции %files, и указывать с директивой %config(noreplace). > License: GPLv3 Требуется уточнение лицензии (см. https://www.gnu.org/licenses/identify-licenses-clearly.html и https://spdx.org/licenses/), нужно исправить. Почти все собранные пакеты были модулями Ruby с тривиальной сборкой. Предлагаю кандидату ещё собрать или обновить пакеты, не связанные с Ruby, по возможности с менее тривиальной сборкой, а также исправить более существенные замечания, обозначенные выше. (Ответ для Vladimir D. Seleznev на комментарий #61) > Предлагаю кандидату ещё собрать или обновить пакеты, не связанные с Ruby, по > возможности с менее тривиальной сборкой, Не совсем понятно, что подразумевается под "менее тривиальной сборкой"? Есть какие то критерии? (Ответ для Vladimir D. Seleznev на комментарий #61) > Предлагаю кандидату ещё собрать или обновить пакеты, не связанные с Ruby, по > возможности с менее тривиальной сборкой, Не совсем понятно, что подразумевается под "менее тривиальной сборкой"? Есть какие то критерии? (In reply to DVoropaev from comment #63) > (Ответ для Vladimir D. Seleznev на комментарий #61) > > > Предлагаю кандидату ещё собрать или обновить пакеты, не связанные с Ruby, по > > возможности с менее тривиальной сборкой, > > Не совсем понятно, что подразумевается под "менее тривиальной сборкой"? > Есть какие то критерии? Тривиальная сборка — это сборка пакета, в котором не участвуют патчи (или все патчи тривиальные), а все инструкции сборки ограничивают макросами, раскрывающие ся в configure; make; make install, или их функциональные аналоги. Нетривиальная — это сборка сложнее, чем тривиальная. Конечно, в идеале у всех пакетов должна быть тривиальная сборка. Попробуйте, например, обновить чей-то пакет, желательно с иной схемой gear. Добрый день. Я предлагаю в рамках прохождения процедуры Join не заниматься пересборкой всего. А то процедура растянется бесконечно. Так как лицензия NMap вообще вызывает много вопросов и для их решения надо связываться с компанией-производителем, предлагаю обновить подтухающий в репозиториях masscan до свежей на текущий момент версии 1.3.2 ( https://github.com/robertdavidgraham/masscan/tree/1.3.2 ). Там лицензия AGPLv3 без всяких оговорок. Если человек осилит процесс, то почему бы не довести Join до логического финала? Вроде бы с nmap ситуация опять поменялась, но вы, конечно, решайте сами, на каких пакетах тренироваться. (Ответ для Vladimir D. Seleznev на комментарий #64) > Попробуйте, например, обновить чей-то пакет, желательно с иной схемой gear. Ты видел устройство nmap.git? Мне вот расхотелось его трогать, см. bug 44029 comment 2. --- Есть предложение не предлагать пробивающимся в команду критерии вида "поди туда, не знаю, куда, принеси то, не знаю, что". Сделанное человеком в рамках данной баги явно больше, чем те тривиальные(!) изменения в webalizer и mrtg, с которых начиналось моё участие в team. Посему: неча человека мариновать, принимайте уже :-) Вы как-то пропали, а я про вас и забыл, простите. У меня по предыдущим пакетам серьёзных замечаний не было, если ментор считает, что кандидат готов, то пропускайте. (In reply to Vladimir D. Seleznev from comment #68) > Вы как-то пропали, а я про вас и забыл, простите. У меня по предыдущим > пакетам серьёзных замечаний не было, если ментор считает, что кандидат > готов, то пропускайте. Поскольку прошёл почти год без движения, я бы хотел подтверждения, что это действительно ещё актуально. (Ответ для Dmitry V. Levin на комментарий #69) > (In reply to Vladimir D. Seleznev from comment #68) > > Вы как-то пропали, а я про вас и забыл, простите. У меня по предыдущим > > пакетам серьёзных замечаний не было, если ментор считает, что кандидат > > готов, то пропускайте. > > Поскольку прошёл почти год без движения, я бы хотел подтверждения, что это > действительно ещё актуально. Да, это актуально Адрес подписан на devel@. Пользователь добавлен в группу мейнтейнеров. Желаю удачного мейнтейнерства! (Ответ для Gleb F-Malinovskiy на комментарий #71) > Адрес подписан на devel@. > Пользователь добавлен в группу мейнтейнеров. > > Желаю удачного мейнтейнерства! Благодарю! |