From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Wed, 11 Nov 2020 19:09:31 +0300 From: "Dmitry V. Levin" To: ALT Devel discussion list Message-ID: <20201111160931.GB9029@altlinux.org> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit Subject: [devel] Q: duplicate tcl() self-provides X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Nov 2020 16:09:32 -0000 Archived-At: List-Archive: List-Post: 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