Bug 31476

Summary: Устанавливает старый пакет вместо нового.
Product: Sisyphus Reporter: Sergey V Turchin <zerg>
Component: aptAssignee: placeholder <placeholder>
Status: CLOSED NOTABUG QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: anubix, aris, boyarsh, glebfm, imz, ldv, placeholder, sbolshakov, sem
Version: unstable   
Hardware: all   
OS: Linux   

Description Sergey V Turchin 2015-11-12 10:48:54 MSK
В текущий момент в репозитории есть пакеты:
libglew-devel-1.7.0-alt2 (слово GLEW в именах пакетов/зависимостей не фигурирует)
libGLEW-devel-1.13.0-alt3 (provides libglew-devel = 1.13.0-alt3, obsoletes libglew-devel < 1.13.0-alt3)
При
apt-get install libglew-devel
устанавливается libglew-devel-1.7.0-alt2, а не libGLEW-devel-1.13.0-alt3
Мало того, если установлен libGLEW-devel-1.13.0-alt3, сносит его.

P.S.
Просьба по возможности не удалять из репозитория libglew-devel для воспроизведения бага.
Comment 1 Mikhail Efremov 2015-11-12 20:31:35 MSK
Не воспроизводится:
# apt-get update && apt-get dist-upgrade
Reading Package Lists... Done   
Building Dependency Tree... Done
Reading Package Lists... Done
Building Dependency Tree... Done
Calculating Upgrade... Done
The following packages will be upgraded
  dhcpcd perl-RPM-Source-Editor
The following packages will be REPLACED:
  libglew-devel (by libGLEW-devel)
The following NEW packages will be installed:
  libGLEW-devel libGLEW1.13 libGLEWmx1.13
Comment 2 Sergey V Turchin 2015-11-13 12:58:05 MSK
(В ответ на комментарий №1)
> Не воспроизводится:
См. сообщение выше.
Comment 3 Mikhail Efremov 2015-11-13 13:27:41 MSK
А, ну да. Я, собственно, сначала и делал apt-get install libglew-devel, прежде чем пробовать dist-upgrade. Я, видимо, не понимаю в чем проблема. Apt, AFAIK, всегда в этом случае предпочитает реальный пакет виртуальному. А как еще поставить именно libglew-devel при наличии в том же репозитории пакета, который его обсолетит? Просто не надо держать такие пакеты в одном репозитории.
Comment 4 Sergey V Turchin 2015-11-13 14:21:18 MSK
(В ответ на комментарий №3)
> Я, собственно, сначала и делал apt-get install libglew-devel, прежде
> чем пробовать dist-upgrade.
Без разницы. Всё одно.

> Apt, AFAIK,
> всегда в этом случае предпочитает реальный пакет виртуальному.
Да, вот, я тоже не помню. Может, гоню. :-)

> А как еще
> поставить именно libglew-devel при наличии в том же репозитории пакета, который
> его обсолетит?
Виртуальный пакет не заобсолетишь.

> Просто не надо держать такие пакеты в одном репозитории.
Больше напоминает костыль, к тому же не всегда руботающий, т.к. ни у пользователя доступа к содержимому репозиториев нет, ни у владельца другого репозитория.
Comment 5 Sergey V Turchin 2015-11-13 14:30:08 MSK
Еще пример:
Если BuildRequires: libglew-devel , то в сборочнице собирается с ним, а не с libGLEW-devel .
Comment 6 Sergey V Turchin 2016-01-29 14:43:29 MSK
2 Gleb: А может это последствия http://git.altlinux.org/gears/a/apt.git?p=apt.git;a=commitdiff;h=e2184306b28908f208869b791d1bb0550c659674 ?
Comment 7 Sergey V Turchin 2016-01-29 14:46:00 MSK
(В ответ на комментарий №6)
> 2 Gleb: А может это последствия
> http://git.altlinux.org/gears/a/apt.git?p=apt.git;a=commitdiff;h=e2184306b28908f208869b791d1bb0550c659674
> ?
Хотя, там вроде только на dist-upgrade влияет.
Comment 8 Sergey V Turchin 2016-02-01 15:48:37 MSK
2 sbolshakov: libglew-devel, видимо, пора удалять, а то много с ним собраного в бранч пойдет.
Comment 9 Sergey V Turchin 2016-02-11 15:11:34 MSK
Вроде, так нормально и было всегда.
Comment 10 Zerg 2016-02-13 14:31:25 MSK
Так же справедливо в данный момент при сборке с 
BuildRequires: pkgconfig(icu-i18n)
libvisio-0.1.3-alt1.1 собрался с libicu5.1-devel вместо libicu-devel-5.6
C BuildRequires: libicu-devel собирается правильно

P.S.
Не выяснял конкретно и допускаю кривость пакетов icu*
Comment 11 Zerg 2016-02-13 14:53:14 MSK
(В ответ на комментарий №10)
> C BuildRequires: libicu-devel собирается правильно
libvisio-0.1.3-alt1.2
http://git.altlinux.org/gears/l/libvisio.git?p=libvisio.git;a=commitdiff;h=02d97afe9b48c876dba924e459a6f2eb7f5dfef3