* [devel] Q: duplicate npm() self-provides
@ 2020-11-11 16:30 Dmitry V. Levin
2020-11-12 9:38 ` Vitaly Lipatov
0 siblings, 1 reply; 4+ messages in thread
From: Dmitry V. Levin @ 2020-11-11 16:30 UTC (permalink / raw)
To: ALT Devel discussion list
Hi,
У нас в репозитории обнаружилось несколько пакетов, которые содержат сразу
две разных версии одного и того же npm(...) в Provides.
Предполагаю, что во всех случаях это ошибки, поскольку сравнения версий в
rpm работают не так, как ожидают люди, когда у пакета больше одной версии.
Кто-нибудь знает, зачем это было сделано?
$ pkglist-query '[%{PROVIDENAME} %{NAME} %{PROVIDEFLAGS:depflags}%{PROVIDEVERSION}\n]' \
Sisyphus/{x86_64,noarch}/base.bloat/pkglist.classic |\
sed -rn -e 's/ \+$//' -e 's/^(npm\([^ ]+) ([^ ]+) ([^ ]+)$/\3 \2 \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:
node-nodeunit npm(ansi-regex) =2.1.1
node-nodeunit npm(ansi-regex) =4.1.0
node-sass npm(ansi-regex) =2.1.1
node-sass npm(ansi-regex) =4.1.0
node-sass npm(ansi-styles) =2.2.1
node-sass npm(ansi-styles) =3.2.1
node-sass npm(camelcase) =2.1.1
node-sass npm(camelcase) =5.3.1
node-nodeunit npm(debug) =2.6.9
node-nodeunit npm(debug) =4.1.1
node-nodeunit npm(diff) =1.4.0
node-nodeunit npm(diff) =4.0.2
node-sass npm(find-up) =1.1.2
node-sass npm(find-up) =3.0.0
node-sass npm(is-fullwidth-code-point) =1.0.0
node-sass npm(is-fullwidth-code-point) =2.0.0
node-nodeunit npm(minimist) =0.0.8
node-nodeunit npm(minimist) =1.2.0
node-nodeunit npm(ms) =2.0.0
node-nodeunit npm(ms) =2.1.2
node-sass npm(path-exists) =2.1.0
node-sass npm(path-exists) =3.0.0
node-nodeunit npm(pify) =3.0.0
node-nodeunit npm(pify) =4.0.1
lessjs npm(punycode) =1.4.1
lessjs npm(punycode) =2.1.1
node-nodeunit npm(punycode) =1.4.1
node-nodeunit npm(punycode) =2.1.1
node-nodeunit npm(safe-buffer) =5.1.2
node-nodeunit npm(safe-buffer) =5.2.0
node-nodeunit npm(semver) =5.7.1
node-nodeunit npm(semver) =6.3.0
node-nodeunit npm(source-map) =0.5.7
node-nodeunit npm(source-map) =0.6.1
node-sass npm(string-width) =1.0.2
node-sass npm(string-width) =3.1.0
node-nodeunit npm(strip-ansi) =3.0.1
node-nodeunit npm(strip-ansi) =5.2.0
node-sass npm(strip-ansi) =3.0.1
node-sass npm(strip-ansi) =5.2.0
node-nodeunit npm(supports-color) =5.5.0
node-nodeunit npm(supports-color) =6.1.0
node-nodeunit npm(tap-parser) =5.4.0
node-nodeunit npm(tap-parser) =7.0.0
node-nodeunit npm(yallist) =2.1.2
node-nodeunit npm(yallist) =3.1.1
--
ldv
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [devel] Q: duplicate npm() self-provides
2020-11-11 16:30 [devel] Q: duplicate npm() self-provides Dmitry V. Levin
@ 2020-11-12 9:38 ` Vitaly Lipatov
2020-11-12 9:56 ` Dmitry V. Levin
0 siblings, 1 reply; 4+ messages in thread
From: Vitaly Lipatov @ 2020-11-12 9:38 UTC (permalink / raw)
To: ALT Linux Team development discussions; +Cc: Dmitry V. Levin
Dmitry V. Levin писал 11.11.20 19:30:
> Hi,
>
> У нас в репозитории обнаружилось несколько пакетов, которые содержат
> сразу
> две разных версии одного и того же npm(...) в Provides.
> Предполагаю, что во всех случаях это ошибки, поскольку сравнения версий
> в
> rpm работают не так, как ожидают люди, когда у пакета больше одной
> версии.
> Кто-нибудь знает, зачем это было сделано?
В случае npm там глобальная ошибка, из-за которой предоставляются
модули, которые пакет не должен предоставлять (потому что пакет должен
предоставлять только себя самого).
Исправлю.
> $ pkglist-query '[%{PROVIDENAME} %{NAME}
> %{PROVIDEFLAGS:depflags}%{PROVIDEVERSION}\n]' \
> Sisyphus/{x86_64,noarch}/base.bloat/pkglist.classic |\
> sed -rn -e 's/ \+$//' -e 's/^(npm\([^ ]+) ([^ ]+) ([^ ]+)$/\3 \2
> \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:'
А не будет ли хорошей идей вешать такие списки на счётчик?
Ну то есть при появлении таких конструкций, формирующих замечания,
добавлять их в скрипт, который будет регулярно выполняться с публикацией
результата (на ftp).
Таким образом мы всегда будем иметь актуальные замечания. Потому что как
повторить это, я не знаю (где взять base.bloat), а список замечаний это
очень круто.
--
С уважением,
Виталий Липатов,
ALT Linux Team
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [devel] Q: duplicate npm() self-provides
2020-11-12 9:38 ` Vitaly Lipatov
@ 2020-11-12 9:56 ` Dmitry V. Levin
2020-11-12 16:30 ` Vitaly Lipatov
0 siblings, 1 reply; 4+ messages in thread
From: Dmitry V. Levin @ 2020-11-12 9:56 UTC (permalink / raw)
To: ALT Devel discussion list
On Thu, Nov 12, 2020 at 12:38:56PM +0300, Vitaly Lipatov wrote:
> Dmitry V. Levin писал 11.11.20 19:30:
> > $ pkglist-query '[%{PROVIDENAME} %{NAME}
> > %{PROVIDEFLAGS:depflags}%{PROVIDEVERSION}\n]' \
> > Sisyphus/{x86_64,noarch}/base.bloat/pkglist.classic |\
> > sed -rn -e 's/ \+$//' -e 's/^(npm\([^ ]+) ([^ ]+) ([^ ]+)$/\3 \2
> > \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:'
> А не будет ли хорошей идей вешать такие списки на счётчик?
> Ну то есть при появлении таких конструкций, формирующих замечания,
> добавлять их в скрипт, который будет регулярно выполняться с публикацией
> результата (на ftp).
>
> Таким образом мы всегда будем иметь актуальные замечания. Потому что как
> повторить это, я не знаю (где взять base.bloat), а список замечаний это
> очень круто.
Я специально процитировал тот скрипт, которым был получен результат,
чтобы его мог повторить каждый желающий.
Если нет base.bloat, то можно вместо
pkglist-query "$qf" Sisyphus/noarch/base.bloat/pkglist.classic
делать, например,
xzcat Sisyphus/noarch/base/pkglist.classic.xz |pkglist-query "$qf" /dev/stdin
- сути это не меняет, но xzcat работает дольше, чем pkglist-query.
--
ldv
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [devel] Q: duplicate npm() self-provides
2020-11-12 9:56 ` Dmitry V. Levin
@ 2020-11-12 16:30 ` Vitaly Lipatov
0 siblings, 0 replies; 4+ messages in thread
From: Vitaly Lipatov @ 2020-11-12 16:30 UTC (permalink / raw)
To: ALT Linux Team development discussions
Dmitry V. Levin писал 12.11.20 12:56:
...
> Я специально процитировал тот скрипт, которым был получен результат,
> чтобы его мог повторить каждый желающий.
А почему вы не хотите услышать простую идею, что если у нас будет
автообновляемый перечень предупреждений, то это лучше того, что когда-то
кто-то решит запустить скрипт.
И вы о том, что оставляете делать такой сервис другим?
--
С уважением,
Виталий Липатов,
ALT Linux Team
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-11-12 16:30 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-11 16:30 [devel] Q: duplicate npm() self-provides Dmitry V. Levin
2020-11-12 9:38 ` Vitaly Lipatov
2020-11-12 9:56 ` Dmitry V. Levin
2020-11-12 16:30 ` Vitaly Lipatov
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