* [devel] Q: duplicate tcl() self-provides
@ 2020-11-11 16:09 Dmitry V. Levin
2020-11-11 16:38 ` Vladimir D. Seleznev
0 siblings, 1 reply; 2+ messages in thread
From: Dmitry V. Levin @ 2020-11-11 16:09 UTC (permalink / raw)
To: ALT Devel discussion list
Hi,
У нас в репозитории обнаружилось несколько пакетов, которые содержат сразу
2 разные версии одного и того же tcl(...) в Provides. Предполагаю, что во
всех случаях это ошибки, поскольку сравнения версий в rpm работают не так,
как ожидают люди, когда у пакета больше одной версии. Кто-нибудь знает,
зачем это было сделано?
$ pkglist-query '[%{PROVIDENAME} %{NAME} %{PROVIDEFLAGS:depflags}%{PROVIDEVERSION}\n]' \
Sisyphus/{x86_64,noarch}/base.bloat/pkglist.classic |\
sed -rn -e 's/ \+$//' -e 's/^(tcl\(([^ ]+)) ([^ ]+) ([^ ]+)$/\4 \3 \1/p' |\
sort -k2 |\
uniq -D -f1 |\
sed -rn -e 's/^([^ ]+) ([^ ]+) ([^ ]+)$/\2 \3 \1/p' |\
sort -k2,2 |\
column -t -N 'Package:,Provide Name:,Provide Version:'
Package: Provide Name: Provide Version:
tcllib tcl(doctools::idx) =1.1
tcllib tcl(doctools::idx) =2
tcllib tcl(doctools::toc) =1.2
tcllib tcl(doctools::toc) =2
tcl tcl(http) =1.0
tcl tcl(http) =2.9.1
tklib tcl(ico) =0.3.2
tklib tcl(ico) =1.1
tcllib tcl(math::bigfloat) =1.2.2
tcllib tcl(math::bigfloat) =2.0.2
tcllib tcl(md5) =1.4.4
tcllib tcl(md5) =2.0.7
tcllib tcl(sha1) =1.1.1
tcllib tcl(sha1) =2.0.4
tcllib tcl(snit) =1.4.2
tcllib tcl(snit) =2.3.2
tcllib tcl(struct) =1.4
tcllib tcl(struct) =2.1
tcllib tcl(struct::graph) =1.2.1
tcllib tcl(struct::graph) =2.4.3
tcllib tcl(struct::matrix) =1.2.2
tcllib tcl(struct::matrix) =2.0.4
tcllib tcl(struct::tree) =1.2.2
tcllib tcl(struct::tree) =2.1.2
tcllib tcl(wip) =1.2
tcllib tcl(wip) =2.2
--
ldv
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [devel] Q: duplicate tcl() self-provides
2020-11-11 16:09 [devel] Q: duplicate tcl() self-provides Dmitry V. Levin
@ 2020-11-11 16:38 ` Vladimir D. Seleznev
0 siblings, 0 replies; 2+ messages in thread
From: Vladimir D. Seleznev @ 2020-11-11 16:38 UTC (permalink / raw)
To: ALT Linux Team development discussions
On Wed, Nov 11, 2020 at 07:09:31PM +0300, Dmitry V. Levin wrote:
> Hi,
>
> У нас в репозитории обнаружилось несколько пакетов, которые содержат сразу
> 2 разные версии одного и того же tcl(...) в Provides. Предполагаю, что во
> всех случаях это ошибки, поскольку сравнения версий в rpm работают не так,
> как ожидают люди, когда у пакета больше одной версии. Кто-нибудь знает,
> зачем это было сделано?
Эти пакеты действительно провайдят несколько версий расширений:
$ tclsh
tclsh8.6 [~] package require http 1.0
1.0
tclsh8.6 [~] package require http 2.9.1
version conflict for package "http": have 1.0, need 2.9.1
while evaluating package require http 2.9.1
tclsh8.6 [~] exit
$ tclsh
tclsh8.6 [~] package require http 2.9.1
2.9.1
tclsh8.6 [~] package require http 1.0
version conflict for package "http": have 2.9.1, need 1.0
while evaluating package require http 1.0
Некоторые пакеты могу требовать определённые версии модулей. Как можно
разрешить эту ситуацию?
--
WBR,
Vladimir D. Seleznev
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-11-11 16:38 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-11 16:09 [devel] Q: duplicate tcl() self-provides Dmitry V. Levin
2020-11-11 16:38 ` Vladimir D. Seleznev
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