Bug 26184

Summary: format of epoch-ed provides differ on i586 and x86_64
Product: Sisyphus Reporter: viy <viy>
Component: rpm-buildAssignee: placeholder <placeholder>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: arseny, glebfm, imz, ldv, n3npq, placeholder, vt
Version: unstable   
Hardware: all   
OS: Linux   

Description viy 2011-08-29 01:05:46 MSK
http://git.altlinux.org/tasks/53410/task/log.1.1

2011-Aug-29 00:46:49 :: task #53410 for sisyphus started by viy:
#100 build maven-1.1-alt12_9jpp6.src.rpm
#200 build maven1-plugins-1.1-alt4.src.rpm
#300 delete maven-plugins
2011-Aug-29 00:46:50 :: cloned Sisyphus
2011-Aug-29 00:47:01 :: created build repo
2011-Aug-29 00:47:04 :: [i586] #100 maven-1.1-alt12_9jpp6.src.rpm: build start
2011-Aug-29 00:47:04 :: [x86_64] #100 maven-1.1-alt12_9jpp6.src.rpm: build start
2011-Aug-29 00:54:55 :: [i586] #100 maven-1.1-alt12_9jpp6.src.rpm: build OK
2011-Aug-29 00:54:55 :: [i586] #200 maven1-plugins-1.1-alt4.src.rpm: build start
2011-Aug-29 00:55:15 :: [i586] #200 maven1-plugins-1.1-alt4.src.rpm: build OK
2011-Aug-29 00:56:06 :: [x86_64] #100 maven-1.1-alt12_9jpp6.src.rpm: build OK
2011-Aug-29 00:56:06 :: [x86_64] #200 maven1-plugins-1.1-alt4.src.rpm: build start
2011-Aug-29 00:56:26 :: [x86_64] #200 maven1-plugins-1.1-alt4.src.rpm: build OK
2011-Aug-29 00:58:06 :: build check OK
--- maven-plugin-aspectwerkz-1.1-alt12_9jpp6.noarch.rpm.i586    2011-08-29 00:58:07.833790134 +0400
+++ maven-plugin-aspectwerkz-1.1-alt12_9jpp6.noarch.rpm.x86_64  2011-08-29 00:58:07.905789663 +0400
@@ -14,2 +14,2 @@
 Provides: maven-plugin-aspectwerkz = 0:1.1-alt12_9jpp6
-Provides: maven1-plugin-aspectwerkz = 0:1.1-alt12_9jpp6
+Provides: maven1-plugin-aspectwerkz = 1.1-alt12_9jpp6
error (#100): non-identical noarch packages
--- maven-plugin-jnlp-1.1-alt12_9jpp6.noarch.rpm.i586   2011-08-29 00:58:13.081755770 +0400
+++ maven-plugin-jnlp-1.1-alt12_9jpp6.noarch.rpm.x86_64 2011-08-29 00:58:13.153755299 +0400
@@ -8,2 +8,2 @@
 Provides: maven-plugin-jnlp = 0:1.1-alt12_9jpp6
-Provides: maven1-plugin-jnlp = 0:1.1-alt12_9jpp6
+Provides: maven1-plugin-jnlp = 1.1-alt12_9jpp6
error (#100): non-identical noarch packages
--- maven-plugin-linkcheck-1.1-alt12_9jpp6.noarch.rpm.i586      2011-08-29 00:58:13.989749825 +0400
+++ maven-plugin-linkcheck-1.1-alt12_9jpp6.noarch.rpm.x86_64    2011-08-29 00:58:14.061749353 +0400
@@ -14,2 +14,2 @@
 Provides: maven-plugin-linkcheck = 0:1.1-alt12_9jpp6
-Provides: maven1-plugin-linkcheck = 0:1.1-alt12_9jpp6
+Provides: maven1-plugin-linkcheck = 1.1-alt12_9jpp6
error (#100): non-identical noarch packages
--- maven-plugin-scm-1.1-alt12_9jpp6.noarch.rpm.i586    2011-08-29 00:58:15.737738379 +0400
+++ maven-plugin-scm-1.1-alt12_9jpp6.noarch.rpm.x86_64  2011-08-29 00:58:15.813737881 +0400
@@ -13,2 +13,2 @@
 Provides: maven-plugin-scm = 0:1.1-alt12_9jpp6
-Provides: maven1-plugin-scm = 0:1.1-alt12_9jpp6
+Provides: maven1-plugin-scm = 1.1-alt12_9jpp6
error (#100): non-identical noarch packages
--- maven-plugin-touchstone-partner-1.1-alt12_9jpp6.noarch.rpm.i586     2011-08-29 00:58:17.177728949 +0400
+++ maven-plugin-touchstone-partner-1.1-alt12_9jpp6.noarch.rpm.x86_64   2011-08-29 00:58:17.253728452 +0400
@@ -8,2 +8,2 @@
 Provides: maven-plugin-touchstone-partner = 0:1.1-alt12_9jpp6
-Provides: maven1-plugin-touchstone-partner = 0:1.1-alt12_9jpp6
+Provides: maven1-plugin-touchstone-partner = 1.1-alt12_9jpp6
error (#100): non-identical noarch packages
2011-Aug-29 00:58:18 :: noarch check FAILED
2011-Aug-29 00:58:18 :: task #53410 for sisyphus FAILED
Comment 1 viy 2011-08-29 01:07:00 MSK
I suspect that it might be due to optimization of provides
Comment 2 viy 2011-08-29 01:46:13 MSK
см. тж.
http://git.altlinux.org/tasks/53414/task/log.1.1
Comment 3 viy 2011-08-29 01:49:45 MSK
по времени тоже похоже на появление оптимизации provides.
можно оптимизацию поравить (для совместимости со старшими rpm)
можно тест подправить.
чтобы фильтровал s,-0:,-, из Provides
Comment 4 Jeff Johnson 2012-01-03 02:53:25 MSK
tracked at https://bugs.launchpad.net/rpm/+bug/911016
Comment 5 viy 2012-06-13 22:26:56 MSK
актуально,
вылезло вот только в [#73551] FAILED srpm=antlr-2.7.7-alt9_13jpp6.src.rpm
http://git.altlinux.org/tasks/73551/logs/events.1.1.log

2012-Jun-13 18:35:08 :: task #73551 for sisyphus started by viy:
#100 build antlr-2.7.7-alt9_13jpp6.src.rpm
2012-Jun-13 18:35:09 :: cloned Sisyphus
2012-Jun-13 18:35:11 :: [i586] #100 antlr-2.7.7-alt9_13jpp6.src.rpm: build start
2012-Jun-13 18:35:11 :: [x86_64] #100 antlr-2.7.7-alt9_13jpp6.src.rpm: build start
2012-Jun-13 18:40:49 :: [x86_64] #100 antlr-2.7.7-alt9_13jpp6.src.rpm: build OK
2012-Jun-13 18:41:05 :: [i586] #100 antlr-2.7.7-alt9_13jpp6.src.rpm: build OK
2012-Jun-13 18:41:13 :: build check OK
--- antlr-tool-2.7.7-alt9_13jpp6.noarch.rpm.i586        2012-06-13 18:41:14.031424758 +0400
+++ antlr-tool-2.7.7-alt9_13jpp6.noarch.rpm.x86_64      2012-06-13 18:41:14.099424324 +0400
@@ -16,3 +16,3 @@
 Requires: rpmlib(PayloadIsLzma)
-Provides: antlr = 0:2.7.7-alt9_13jpp6
+Provides: antlr = 2.7.7-alt9_13jpp6
 Provides: /usr/bin/antlr = 10
error (#100): non-identical noarch packages
2012-Jun-13 18:41:15 :: noarch check FAILED
2012-Jun-13 18:41:15 :: task #73551 for sisyphus FAILED
Comment 6 Dmitry V. Levin 2012-06-13 22:36:55 MSK
%package tool
Group:          Development/Java
Summary:        ANother Tool for Language Recognition (java version)
Requires(post): alternatives
Requires(preun): alternatives
BuildArch: noarch
Provides: %name = %version-%release
Provides: %name = %epoch:%version-%release
Obsoletes: %name < %version-%release
Conflicts: %name < %version-%release

wontfix?
Comment 7 viy 2012-06-13 22:47:09 MSK
Я то потом убрал %epoch: из provides, здесь это можно было.
Но если бы нашлась софтина, которая хотела бы provides с %epoch,
то был бы тупик.
убрал %epoch: из provides - unmet
не убрал %epoch: из provides - не прошел проверку :(

Правильнее все-таки пофиксить проверку или apt или rpm или что что проблему порождает.

Ведь уже не раз вылезает эта грабля.
Comment 8 Dmitry V. Levin 2012-06-13 23:53:24 MSK
(In reply to comment #6)
> Provides: %name = %version-%release
> Provides: %name = %epoch:%version-%release

Здесь 2 provides одного имени с разными EVR.

> Obsoletes: %name < %version-%release
> Conflicts: %name < %version-%release

Здесь какой-то совершенно неуместный Conflicts.

(In reply to comment #7)
> Я то потом убрал %epoch: из provides, здесь это можно было.

Зачем два разных provides для одного имени?  Как может работать механизм сравнения версий в случае, когда один provides удовлетворяет, а другой provides с тем же именем не удовлетворяет?  Я полагаю, что это undefined behaviour.

> Правильнее все-таки пофиксить проверку или apt или rpm или что что проблему
> порождает.
> 
> Ведь уже не раз вылезает эта грабля.

Я не утверждаю, что rpmbuild всегда ведет себя правильно, но эти грабли вылезают в каких-то странных машиносгенеренных спеках.
Мне кажется, что у нас есть более актуальные задачи, чем повышение качества обработки неправильных спеков.
Comment 9 viy 2012-06-14 00:27:46 MSK
конечно, это не тот баг, который нужно срочно фиксить, 
это симптом какого-то сбоя, возможно в apt.
Вдруг когда-то найдется возможность его починить.
Comment 10 viy 2012-06-14 00:34:08 MSK
Т.е. и баг есть, но есть и возможность его обойти.
Не проблема, если он и год будет висеть. Это не горит.

А вот что для меня горит, это
https://bugzilla.altlinux.org/show_bug.cgi?id=27419
[add src.list from autoimports.altlinux.org to the lists checked]
на этот я бы просил обратить внимание.