Bug 55964
| Summary: | [done] join asd@ | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Team Accounts | Reporter: | Aleksandr Dovydenkov <dovydenkovas> | ||||||
| Component: | join | Assignee: | Gleb F-Malinovskiy <glebfm> | ||||||
| Status: | CLOSED FIXED | QA Contact: | Andrey Cherepanov <cas> | ||||||
| Severity: | normal | ||||||||
| Priority: | P5 | CC: | arseny, egori, glebfm, ldv, protvin, savoptik | ||||||
| Version: | unspecified | ||||||||
| Hardware: | all | ||||||||
| OS: | Linux | ||||||||
| Attachments: |
|
||||||||
Created attachment 19540 [details]
GPG ключ
Менторство подтверждаю, ключи проверил. ssh ключ на gitery.alt зарегистрирован. Адрес для пересылки создан. T/J/S -> 2.3. Считаю, что кандидат готов собирать пакеты. Прошу предоставить доступ на сборочницу. ssh ключ на gyle.alt зарегистрирован. Пакет alt-gpgkeys обновлён. Адрес подписан на devel@. T/J/S -> 3.6. Здравствуйте! Прошу остановить работы по этой задаче: https://git.altlinux.org/tasks/402251/ Мой подопечный уже занимается набором этих пакетов. Много работы вокруг них было проделано для исправления ошибок при исполнении. (Ответ для protvin@altlinux.org на комментарий #6) > Прошу остановить работы по этой задаче: > https://git.altlinux.org/tasks/402251/ Добрый день! Принято, работы останавливаю. Спасибо, что предупредили. Считаю, что подопечный готов отправлять пакеты в Сизиф Здравствуйте, Александр и Егор! Сообщите, пожалуйста, на что будущему рецензенту Александра лучше смотреть, чтобы оценить актуальные умения. Например, gear-репозитории или сборочные задания. А то, если изучать произвольные какие-то пакеты, то можно составить слишком пасмурное впечатление по ранним пакетам, в которых может быть больше огрехов. Ответ "Да просто все таски посмотрите" тоже принимается, на страх и риск кандидата. :) Здравствуйте, Арсений! Упакетил: scorecard https://packages.altlinux.org/en/tasks/401573/ python3-module-graph-tool https://packages.altlinux.org/en/tasks/401575/ Обновлял spyder, потребовалось упакетить несколько новых зависимостей: https://packages.altlinux.org/en/tasks/407777/ Обновлял уже существующие пакеты и исправлял FTBFS: spyder https://packages.altlinux.org/en/tasks/423413/ fuzzel https://packages.altlinux.org/en/tasks/396249/ https://packages.altlinux.org/en/tasks/407385/ https://packages.altlinux.org/en/tasks/410689/ gitui https://packages.altlinux.org/en/tasks/397850/ https://packages.altlinux.org/en/tasks/403035/ mdbook https://packages.altlinux.org/en/tasks/400485/ makedict https://packages.altlinux.org/en/tasks/401068/ fprintd https://packages.altlinux.org/en/tasks/398519/ Отлично. Буду вас смотреть. Можем переписываться здесь, можно писать мне на почту. Есть ещё вариант общаться в личке на нашем matrix-сервере, но в некоторые периоды я могу туда сутки не заглядывать. scorecard
=========
Не имею никаких претензий к упаковке, кроме вкусовых.
Отдельный лайк за update-vendor-dependencies.sh; он в репозитории точно не
потеряется, и повторить/обновить завендоренное будет несложно. Я обычно требую, чтобы кандидаты такую автоматизацию, когда она требуется, выкладывали, но в полиси это нигде не написано вроде, и вы приняли правильное решение.
В этом скрипте есть большой heredoс c ещё одним шелл-скриптом.
Добрый совет: чтобы в нём не эскейпить постоянно $, можно защитить его от
подстановок (всё равно их там не требуется), взяв здесь non-expanding here document:
hsh-run -- sh -e <<'HERE'
$var is here verbatim
HERE
Иначе говоря, закавычить стоп-слово.
По mdbook видно, что вы в нужный момент обратили внимание на чужой пакет, связались с мейнтейнером и сумели договориться. Это ещё плюс балл. :) Но я ещё почитаю внимательнее. python3-module-graph-tool ========================= https://packaging.python.org/en/latest/specifications/recording-installed-packages Ух ты, я и не знал. Любопытно, что в https://en.altlinux.org/Python_packaging_guide об этом ни слова. В спеке видим: > 55 %description devel > 56 %summary. > 64 %description doc > 65 %summary. Но зачем, если есть хорошая секция description у главного исх. пакета? Можно так: взять оттуда пасту, и через пустую строчку добавить одной строкой описание подпакета. https://bugzilla.altlinux.org/show_bug.cgi?id=45539#c36 Здесь wall of text засунули в макроопределение, но можно и копипасту сделать (я лично даже предпочитаю там копипасту). Прошу при будущем обновлении это поправить. Теперь вопросы. :) > 94 %makeinstall_std > 95 mv %buildroot%_datadir/doc/%pypi_name %buildroot%_datadir/doc/python3-module-%pypi_name-%version Вопрос кандидату: а почему бы здесь не написать %name? > 19 Requires: python3-module-matplotlib > 20 Requires: python3-module-matplotlib-cairo > 21 Requires: libgtk+3-gir > 22 Requires: python3-module-pygobject3 > 23 Requires: python3-module-zstandard Вопрос кандидату: появляются ли эти зависимости автоматически, если их не указать? обоснуйте ответ. Остальное чуть позже; не ранее чем завтра. (Ответ для Arseny Maslennikov на комментарий #13) > Прошу при будущем обновлении это поправить. Описания подпакетов поправил. > Вопрос кандидату: а почему бы здесь не написать %name? Препятствий не вижу. По идее так будет даже лучше, так как будет видно намерение привести имя директории с документацией в соответствие с именем пакета. Исправил в рамках этого же задания. > Вопрос кандидату: появляются ли эти зависимости автоматически, если их не указать? обоснуйте ответ. Автоматиески эти зависимости не появляются, поскольку py3req помечает их как `Ignore for REQ:slight`. По большей части в коде эти зависимости импортируются в блоках try, поэтому их можно было считать опциональными, однако отсуствие этих пакетов ломает функционал связанный с визуализацией графов. Я решил добавить эти зависимости вручную, чтобы библиотека была полностью работоспособна после установки. (In reply to Aleksandr Dovydenkov from comment #14) > (Ответ для Arseny Maslennikov на комментарий #13) > > Прошу при будущем обновлении это поправить. > Описания подпакетов поправил. Да, круто! Хотя до этого "документа-ион" в описании был один, а стало два. Хочется спросить, одинаково ли они заряжены или по-разному, но не буду :D В общем, "grep taion" по спеку поможет это поправить. > > Вопрос кандидату: а почему бы здесь не написать %name? > Препятствий не вижу. По идее так будет даже лучше, так как будет видно > намерение привести имя директории с документацией в соответствие с именем > пакета. > Исправил в рамках этого же задания. OK. Я б уточнил: у нас есть соглашение, что присущие пакету файлы, относящиеся к документации пакета, кладутся в %datadir/doc/%name-%version, и именно туда их старается положить директива %doc. Поскольку (как я понял) вы собирались положить файлы именно туда, мы и указываем здесь именно идиому %name-%version. > > Вопрос кандидату: появляются ли эти зависимости автоматически, если их не указать? обоснуйте ответ. > Автоматиески эти зависимости не появляются, поскольку py3req помечает их как > `Ignore for REQ:slight`. По большей части в коде эти зависимости > импортируются в блоках try, поэтому их можно было считать опциональными, > однако отсуствие этих пакетов ломает функционал связанный с визуализацией > графов. значит, вы проверили результат; прекрасно! > Я решил добавить эти зависимости вручную, чтобы библиотека была > полностью работоспособна после установки. Если дописать в спеке %set_python3_req_method strict , то, действительно, приезжает больше паразитных зависимостей (например, появляется gstreamer и всевозможные медиакодеки). Так что соглашусь с вами; это был скорее правильный выбор. Можно ли убрать `Requires: lib*-gir`? Если нельзя, то почему? fuzzel
======
meson.build:
263 install_data(
264 'LICENSE', 'README.md', 'CHANGELOG.md',
265 install_dir: join_paths(get_option('datadir'), 'doc', 'fuzzel'))
Не стоит ли их класть согл. конвенции из %doc?
Кроме этого, всё хорошо.
(In reply to Arseny Maslennikov from comment #15) > Хочется спросить, одинаково ли они заряжены или по-разному, но не буду :D > В общем, "grep taion" по спеку поможет это поправить. Упс. Судя по тому, как близко они притянулись в спеке, были заряжены по-разному. Разрядил. > Я б уточнил: у нас есть соглашение, что присущие пакету файлы, относящиеся к > документации пакета, кладутся в %datadir/doc/%name-%version, и именно туда > их старается положить директива %doc. Поскольку (как я понял) вы собирались > положить файлы именно туда, мы и указываем здесь именно идиому > %name-%version. Да, именно такого результата я и хотел достичь. > Можно ли убрать `Requires: lib*-gir`? Если нельзя, то почему? Я считаю что нельзя, так как libgtk+3-gir требуется модулю интерактивного отображения графиков, для этого используется именно gtk и именно третьей версии: grep -Rn "gi.require_version('Gtk', '3.0')" src/graph_tool/draw/cairo_draw.py:1545: gi.require_version('Gtk', '3.0') В частности, при отключении перестают работать примеры doc/demos/animation/*.py. fuzzel ====== > meson.build: > 263 install_data( > 264 'LICENSE', 'README.md', 'CHANGELOG.md', > 265 install_dir: join_paths(get_option('datadir'), 'doc', 'fuzzel')) > Не стоит ли их класть согл. конвенции из %doc? Так как пакет изначально не мой, я не менял спек больше, чем необходимо для обновления. Думаю, что можно поправить это при следующем обновлении. (In reply to Aleksandr Dovydenkov from comment #17) > (In reply to Arseny Maslennikov from comment #15) > > Можно ли убрать `Requires: lib*-gir`? Если нельзя, то почему? > Я считаю что нельзя, так как libgtk+3-gir требуется модулю интерактивного > отображения графиков, для этого используется именно gtk и именно третьей > версии: > > grep -Rn "gi.require_version('Gtk', '3.0')" > src/graph_tool/draw/cairo_draw.py:1545: gi.require_version('Gtk', > '3.0') > > В частности, при отключении перестают работать примеры > doc/demos/animation/*.py. Ага. Я о том, что -gir должны вытягиваться сами, и если они этого не делают, то это недочёт rpm-build-gir. BTW, %set_python3_req_method strict приводит к появлению libgtk+3-gir, но мы выше согласились, что его ставить не надо... В общем, незакрытый вопрос здесь есть, но он на ваш прогресс join не влияет. > fuzzel > ====== > > > meson.build: > > 263 install_data( > > 264 'LICENSE', 'README.md', 'CHANGELOG.md', > > 265 install_dir: join_paths(get_option('datadir'), 'doc', 'fuzzel')) > > Не стоит ли их класть согл. конвенции из %doc? > Так как пакет изначально не мой, я не менял спек больше, чем необходимо для > обновления. > Думаю, что можно поправить это при следующем обновлении. OK, прекрасно. К остальным вашим пакетам у меня нет возражений. :) Полагаю, что Александр научился собирать пакеты разной природы, показал, что может принимать при составлении пакета решения аккуратно и вдумчиво, конструктивно взаимодействовать с другими мейнтейнерами в команде. Он достоин самостоятельно сопровождать пакеты в Team. Пользователь добавлен в группу мейнтейнеров. Желаю удачного мейнтейнерства! |

Description
Aleksandr Dovydenkov 2025-09-12 11:45:53 MSK