ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Gleb Fotengauer-Malinovskiy <glebfm@altlinux.org>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Cc: Mikhail Tergoev <fidel@altlinux.org>, Vitaly Lipatov <lav@altlinux.org>
Subject: Re: [devel] libpaper update (was: [#325166] DONE (try 15) libpaper.git=2.1.1-alt1 boomaga.git=3.0.0-alt1.2 xmlto.git=0.0.28-alt3 ...)
Date: Tue, 25 Jul 2023 12:16:13 +0400
Message-ID: <ZL+Ezfo3z9rQokFJ@glebfm.altlinux.org> (raw)
In-Reply-To: <9c3c1df021a7d531380ad21ae5c72d20@altlinux.ru>

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

On Tue, Jul 25, 2023 at 01:21:01AM +0300, Vitaly Lipatov wrote:
> Gleb Fotengauer-Malinovskiy писал(а) 24.7.23 23:18:
> > Hi,
> > 
> > On Mon, Jul 24, 2023 at 09:01:00AM +0000, Girar pender (fidel) wrote:
> >> #102 build 2.1.1-alt1 from /people/fidel/packages/libpaper.git fetched 
> >> at 2023-Jul-21 12:41:18
> >> #500 build 3.0.0-alt1.2 from /people/fidel/packages/boomaga.git 
> >> fetched at 2023-Jul-19 13:45:01
> >> #600 build 0.0.28-alt3 from /gears/x/xmlto.git fetched at 2023-Jul-19 
> >> 17:28:11 from sisyphus
> >> #620 build 1.1.28-alt2 from /people/fidel/packages/libpaper1.git 
> >> fetched at 2023-Jul-21 09:41:37
> > 
> > К сожалению, качество этого обновления оказалось очень низким. От
> > кандидата, проходящего join, конечно, не ожидается, что он не будет 
> > делать
> > таких ошибок, но для этого и нужен ментор.
> Спасибо за иллюстрацию того, что простое обновление

Я вот считаю, что это была довольно сложная задача.

> пакета со сменой 
> soname библиотеки выглядит невразумительно и неоправданно сложным 
> благодаря Shared Policy Libs.

Shared Libs Policy всегда была связана с необходимостью.  Вообще, практика
показывает, что если библиотека сразу собрана с учётом существования
Shared Libs Policy и опыта обновления библиотек со сменой soname, то и
обновление происходит проще.

> Тут даже лучше начинаешь понимать те 
> апстримы, которые делают несовместимые изменения, не меняя soname.

Я не понимаю связи.

> > Я исправил всё, что увидел плохого, потому что очень не хотел видеть 
> > это в
> > Сизифе, который будет опубликован этой ночью.
> Спасибо за исправления! Попробуем сделать для Shared Libs Policy пример 
> на основе этой сиутации.
> 
> >>    - libpaper2: removed the 'Provides: libpaper' because it doesn't 
> >> make any
> >>      sense either.
> Если что, libpaper был нужен для тех пакетов, которые указывали 
> Requires: libpaper ради того, чтобы получить /usr/bin/paperconf. Если вы 
> его убрали, видимо, такие пакеты лишатся нужной им команды.

Частичный Provides: это тоже неправильно.  Тут можно только исправить
все такие пакеты.
Вообще, эту утилиту нужно паковать отдельно, так не делалось раньше, но
при обновлении libpaper стоило это исправить, я даже скажу, что всё ещё
не поздно.

> >>  [...]
> >     - libpaper2: added 'Conflicts: libpaper < 1.1.28-alt3' due to 
> > conflicting
> >       versions of the /usr/bin/paperconf utility.
> >     - Enabled strict mode for the verify-elf check.
> >     - Enabled rpm-build checks for unpackaged files and stripped files.
> >> #200 libpaper1 1.1.28-alt2 -> 1.1.28-alt3
> >>  Mon Jul 24 2023 Gleb F-Malinovskiy <glebfm@altlinux> 1.1.28-alt3
> >>  - NMU:
> >>    - Reverted the libpaper1 package name to libpaper to prevent an 
> >> unnecessary
> >>      relocation of the libpaper.so.1 soname provider.
> >>    - libpaper: added Provides: libpaper1 and Obsoletes: libpaper1 
> >> because
> >>      it has already been uploaded into the Sisyphus repository.
> >>    - Fixed the License: tag (GPL -> GPL-2.0-only).
> >>    - Fixed libpaper Group: tag (System/Libraries -> System/Legacy 
> >> libraries).
> > 
> > 1. Переименование бинарного пакета libpaper в libpaper1 было ошибкой
> > потому что таким образом soname libpaper.so.1 переезжает в другой 
> > пакет.
> А что плохого в том, что библиотека переезжает в другой пакет? Выглядит 
> как тайное знание.

https://www.altlinux.org/Shared_Libs_Policy
  «...можно столкнуться с багофичей apt: он плохо переносит переименования
  пакетов в случае, когда содержимое старой версии пакета переносится в
  пакет с новым именем, но при этом пакет со старым именем остаётся
  существовать».

> Я вот считаю, что вообще плохо пакеты переименовывать, и бинарный 
> libpaper должен был и остаться libpaper.

Тем не менее, ты заапрувил такое переименование.

> > К тому же, переименованный пакет даже не содержит Provides+Obsoletes, 
> > т.е.
> > не будет обновлён, а при установке будет конфликтовать со старым 
> > пакетом.
> Вообще-то обновление проверялось, и старый пакет успешно заменялся:
>   $ sudo apt-repo test 325166
> Получено: 1 http://git.altlinux.org repo/325166/i586 release [1672B]
> Получено: 2 http://mirror.yandex.ru altlinux/Sisyphus/i586 release 
> [4238B]
> Получено 5910B за 0s (115kB/s).
> Найдено http://git.altlinux.org repo/325166/i586/task pkglist
> Найдено http://git.altlinux.org repo/325166/i586/task release
> Найдено http://mirror.yandex.ru altlinux/Sisyphus/i586/debuginfo pkglist
> Найдено http://mirror.yandex.ru altlinux/Sisyphus/i586/debuginfo release
> Чтение списков пакетов... Завершено
> Построение дерева зависимостей... Завершено
> Чтение списков пакетов... Завершено
> Построение дерева зависимостей... Завершено
> Последняя версия boomaga уже установлена.
> Последняя версия xmlto уже установлена.
> Следующие дополнительные пакеты будут установлены:
>    libpaper-devel texlive-dist texlive-fonts-sources texlive-texmf
> Следующие пакеты будут ОБНОВЛЕНЫ:
>    libpaper-devel
> Следующие пакеты будут ЗАМЕНЕНЫ:
>    libpaper (by libpaper2)
> Следующие НОВЫЕ пакеты будут установлены:
>    libpaper1 libpaper2 paper texlive-dist texlive-fonts-sources 
> texlive-texmf xmlto-tex
> 1 будет обновлено, 7 новых установлено, 1 пакетов будет заменено, 0 
> пакетов будет удалено и 315 не будет обновлено.
> Необходимо получить 65,5kB/746MB архивов.
> После распаковки потребуется дополнительно 1976MB дискового 
> пространства.
> Продолжить? [Y/n]

Да, если устанавливать оба пакета одновременно, то проблема, конечно, не
проявится.

> > 2. Между пакетами libpaper2 и libpaper < 1.1.28-alt1 отсутствовал явный
> > конфликт, хотя эти пакеты содержат разные версии /usr/bin/paperconf.
> +1
> 
> > 3. '%set_verify_elf_method rpath=relaxed' из-за попадания %_libdir в 
> > RPATH
> > это просто стыдно, мне сложно даже как-то комментировать.
> А кому стыдно?

К сожалению, ты аппрувишь халтуру и заметание проблем под ковёр, я считаю,
что это категорически неправильный подход для ментора.

> Тому, кто не написал, почему %_libdir в RPATH это плохо 
> на странице
> https://www.altlinux.org/ProblemWithVerifyELFAndRPATH
> ?

Похоже, эта статья по большей части была написана вообще до появления
проверки про стандартные пути.  Хороший повод её обновить.

> Возможно, что это я один не знаю, что такого в %_libdir в RPATH, а 
> возможно, что знает только 3 человека из Тим. Проверять будем?

Те или иные проверки rpath существуют в Альте с 2002 года, а проверка на
наличие стандартных каталогов с 2011 года.  Я удивлён, что ты не
поинтересовался за столько времени, но учить кандидата в Team не
интересоваться такими вещами это совсем другое дело.

В 2011 году при добавлении этой проверки было письмо с иллюстрацией того,
почему это плохо:
https://lore.altlinux.org/devel/20111212145709.GE24413@altlinux.org/

-- 
glebfm

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

  reply	other threads:[~2023-07-25  8:16 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-24 20:18                   ` Gleb Fotengauer-Malinovskiy
2023-07-24 22:21                     ` Vitaly Lipatov
2023-07-25  8:16                       ` Gleb Fotengauer-Malinovskiy [this message]
2023-07-25  8:52                         ` [devel] libpaper update Alexey V. Vissarionov
2023-07-25 12:39                           ` Vitaly Lipatov
2023-07-25 12:47                             ` Sergey V Turchin
2023-07-25 13:24                               ` Vitaly Lipatov
2023-07-25 14:14                                 ` Sergey V Turchin
2023-07-25 17:09                                 ` Anton Farygin
2023-07-25 12:59                             ` Alexey V. Vissarionov
2023-07-25 13:12                         ` [devel] libpaper update (was: [#325166] DONE (try 15) libpaper.git=2.1.1-alt1 boomaga.git=3.0.0-alt1.2 xmlto.git=0.0.28-alt3 ...) Vitaly Lipatov
2023-07-25 18:07                           ` [devel] libpaper update Dmitry V. Levin
2023-07-25 23:21                             ` [devel] доверие мантейнеру Vitaly Lipatov
2023-07-26  5:55                               ` Dmitry V. Levin
2023-07-26  6:15                               ` Dmitry V. Levin
2023-07-28  9:47                                 ` Vitaly Lipatov
2023-07-31 15:56                     ` [devel] libpaper update (was: [#325166] DONE (try 15) libpaper.git=2.1.1-alt1 boomaga.git=3.0.0-alt1.2 xmlto.git=0.0.28-alt3 ...) Vitaly Lipatov
2023-07-31 16:13                       ` Gleb Fotengauer-Malinovskiy
2023-08-01  9:30                         ` [devel] " Sergey V Turchin
2023-08-01 12:06                           ` [devel] " Anton Farygin
2023-08-01 13:26                             ` [devel] " Sergey V Turchin
2023-08-02  0:44                           ` [devel] " Vitaly Lipatov
2023-08-02  8:12                             ` [devel] " Sergey V Turchin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZL+Ezfo3z9rQokFJ@glebfm.altlinux.org \
    --to=glebfm@altlinux.org \
    --cc=devel@lists.altlinux.org \
    --cc=fidel@altlinux.org \
    --cc=lav@altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

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