ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] I: duplicate self-provides
@ 2020-11-11 14:19 Dmitry V. Levin
  2020-11-11 14:53 ` Dmitry V. Levin
  2020-11-12  9:50 ` Dmitry V. Levin
  0 siblings, 2 replies; 9+ messages in thread
From: Dmitry V. Levin @ 2020-11-11 14:19 UTC (permalink / raw)
  To: ALT Devel discussion list

Hi,

У нас в репозитории обнаружилось 119 пакетов, которые содержат сразу 2
разные версии самого себя в Provides.  Полагаю, что во всех случаях это
ошибки, поскольку сравнения версий в rpm работают не так, как ожидают
люди, когда у пакета больше одной версии.

Больше половины таких пакетов (62 из 119) содержат символ подчёркивания
в релизе, что, как правило, говорит об их автоимпортном происхождении.

Видимо, удобнее всего пресекать такие ошибки на стадии sisyphus_check.

$ pkglist-query '[%{PROVIDENAME} %{NAME} %|PROVIDEFLAGS?{%{PROVIDEFLAGS:depflags}%{PROVIDEVERSION}}:{}|\n]' \
  Sisyphus/{x86_64,noarch}/base.bloat/pkglist.classic |\
  sed -rn -e 's/ \+$//' -e 's/^([^ ]+) ([^ ]+) ([^ ]+)$/\3 \2 \1/p' |\
  sort -k2 |\
  uniq -D -f1 |\
  sed -rn -e 's/^([^ ]+) ([^ ]+) ([^ ]+)$/\2 \3 \1/p' |\
  awk '$1==$2{print}' |\
  column -t -N 'Package:,Provide Name:,Provide Version'
Package:                                  Provide Name:                             Provide Version
aalib                                     aalib                                     =1.4-alt8rc5
aalib                                     aalib                                     =1.4rc5
aalib-devel                               aalib-devel                               =1.4-alt8rc5
aalib-devel                               aalib-devel                               =1.4rc5
eclipse-equinox-osgi                      eclipse-equinox-osgi                      =1:4.6.0-0.6.git201605092000.fc24
eclipse-equinox-osgi                      eclipse-equinox-osgi                      =1:4.6.0-alt0.1jpp
eclipse-jdt                               eclipse-jdt                               =1:4.6.0-0.6.git201605092000.fc24
eclipse-jdt                               eclipse-jdt                               =1:4.6.0-alt0.1jpp
eclipse-swt                               eclipse-swt                               =1:4.9.0-2.fc29
eclipse-swt                               eclipse-swt                               =1:4.9.0-alt0.2jpp:sisyphus+233649.100.1.1
erlang-emacs                              erlang-emacs                              =1:21.3.6-alt3
erlang-emacs                              erlang-emacs                              =1:21.3.6-alt3:sisyphus+253926.100.2.1
firmware-acx100                           firmware-acx100                           =1.2.1.34
firmware-acx100                           firmware-acx100                           =1.2.1.34-alt1
firmware-ipw2200                          firmware-ipw2200                          =3.1
firmware-ipw2200                          firmware-ipw2200                          =3.1-alt1
gnupg-manual-en                           gnupg-manual-en                           =1:20070416-alt1
gnupg-manual-en                           gnupg-manual-en                           =20070416
gnupg-manual-ru                           gnupg-manual-ru                           =1:20070216-alt1
gnupg-manual-ru                           gnupg-manual-ru                           =20070216
hydra                                     hydra                                     =8.9.1-alt1
hydra                                     hydra                                     =8.9.1-alt1:sisyphus+226606.100.1.1
hydra-common                              hydra-common                              =8.9.1-alt1
hydra-common                              hydra-common                              =8.9.1-alt1:sisyphus+226606.100.1.1
hydra-gtk                                 hydra-gtk                                 =8.9.1-alt1
hydra-gtk                                 hydra-gtk                                 =8.9.1-alt1:sisyphus+226606.100.1.1
hydra-pwinspector                         hydra-pwinspector                         =8.9.1-alt1
hydra-pwinspector                         hydra-pwinspector                         =8.9.1-alt1:sisyphus+226606.100.1.1
java-1.8.0-openjdk                        java-1.8.0-openjdk                        =0:1.8.0.212.b04-alt2_0jpp8
java-1.8.0-openjdk                        java-1.8.0-openjdk                        =0:1.8.0.212.b04-alt2_0jpp8:sisyphus+255828.100.2.1
java-1.8.0-openjdk-accessibility          java-1.8.0-openjdk-accessibility          =0:1.8.0.212.b04-alt2_0jpp8
java-1.8.0-openjdk-accessibility          java-1.8.0-openjdk-accessibility          =0:1.8.0.212.b04-alt2_0jpp8:sisyphus+255828.100.2.1
java-1.8.0-openjdk-demo                   java-1.8.0-openjdk-demo                   =0:1.8.0.212.b04-alt2_0jpp8
java-1.8.0-openjdk-demo                   java-1.8.0-openjdk-demo                   =0:1.8.0.212.b04-alt2_0jpp8:sisyphus+255828.100.2.1
java-1.8.0-openjdk-devel                  java-1.8.0-openjdk-devel                  =0:1.8.0.212.b04
java-1.8.0-openjdk-devel                  java-1.8.0-openjdk-devel                  =0:1.8.0.212.b04-alt2_0jpp8:sisyphus+255828.100.2.1
java-1.8.0-openjdk-headless               java-1.8.0-openjdk-headless               =0:1.8.0.212.b04-alt2_0jpp8
java-1.8.0-openjdk-headless               java-1.8.0-openjdk-headless               =0:1.8.0.212.b04-alt2_0jpp8:sisyphus+255828.100.2.1
java-1.8.0-openjdk-javadoc                java-1.8.0-openjdk-javadoc                =0:1.8.0.212.b04-alt2_0jpp8
java-1.8.0-openjdk-javadoc                java-1.8.0-openjdk-javadoc                =0:1.8.0.212.b04-alt2_0jpp8:sisyphus+255828.100.2.1
java-1.8.0-openjdk-src                    java-1.8.0-openjdk-src                    =0:1.8.0.212.b04-alt2_0jpp8
java-1.8.0-openjdk-src                    java-1.8.0-openjdk-src                    =0:1.8.0.212.b04-alt2_0jpp8:sisyphus+255828.100.2.1
java-10-openjdk                           java-10-openjdk                           =0:10.0.2.13-alt2_7jpp9
java-10-openjdk                           java-10-openjdk                           =0:10.0.2.13-alt2_7jpp9:sisyphus+259328.100.1.1
java-10-openjdk-demo                      java-10-openjdk-demo                      =0:10.0.2.13-alt2_7jpp9
java-10-openjdk-demo                      java-10-openjdk-demo                      =0:10.0.2.13-alt2_7jpp9:sisyphus+259328.100.1.1
java-10-openjdk-devel                     java-10-openjdk-devel                     =0:10.0.2.13
java-10-openjdk-devel                     java-10-openjdk-devel                     =0:10.0.2.13-alt2_7jpp9:sisyphus+259328.100.1.1
java-10-openjdk-headless                  java-10-openjdk-headless                  =0:10.0.2.13-alt2_7jpp9
java-10-openjdk-headless                  java-10-openjdk-headless                  =0:10.0.2.13-alt2_7jpp9:sisyphus+259328.100.1.1
java-10-openjdk-javadoc                   java-10-openjdk-javadoc                   =0:10.0.2.13-alt2_7jpp9
java-10-openjdk-javadoc                   java-10-openjdk-javadoc                   =0:10.0.2.13-alt2_7jpp9:sisyphus+259328.100.1.1
java-10-openjdk-jmods                     java-10-openjdk-jmods                     =0:10.0.2.13-alt2_7jpp9
java-10-openjdk-jmods                     java-10-openjdk-jmods                     =0:10.0.2.13-alt2_7jpp9:sisyphus+259328.100.1.1
java-10-openjdk-src                       java-10-openjdk-src                       =0:10.0.2.13-alt2_7jpp9
java-10-openjdk-src                       java-10-openjdk-src                       =0:10.0.2.13-alt2_7jpp9:sisyphus+259328.100.1.1
java-11-openjdk                           java-11-openjdk                           =0:11.0.9.7-alt1_0.0.eajpp11
java-11-openjdk                           java-11-openjdk                           =0:11.0.9.7-alt1_0.0.eajpp11:sisyphus+259318.100.1.3
java-11-openjdk-demo                      java-11-openjdk-demo                      =0:11.0.9.7-alt1_0.0.eajpp11
java-11-openjdk-demo                      java-11-openjdk-demo                      =0:11.0.9.7-alt1_0.0.eajpp11:sisyphus+259318.100.1.3
java-11-openjdk-devel                     java-11-openjdk-devel                     =0:11.0.9.7-alt1_0.0.eajpp11
java-11-openjdk-devel                     java-11-openjdk-devel                     =0:11.0.9.7-alt1_0.0.eajpp11:sisyphus+259318.100.1.3
java-11-openjdk-headless                  java-11-openjdk-headless                  =0:11.0.9.7-alt1_0.0.eajpp11
java-11-openjdk-headless                  java-11-openjdk-headless                  =0:11.0.9.7-alt1_0.0.eajpp11:sisyphus+259318.100.1.3
java-11-openjdk-javadoc                   java-11-openjdk-javadoc                   =0:11.0.9.7-alt1_0.0.eajpp11
java-11-openjdk-javadoc                   java-11-openjdk-javadoc                   =0:11.0.9.7-alt1_0.0.eajpp11:sisyphus+259318.100.1.3
java-11-openjdk-jmods                     java-11-openjdk-jmods                     =0:11.0.9.7-alt1_0.0.eajpp11
java-11-openjdk-jmods                     java-11-openjdk-jmods                     =0:11.0.9.7-alt1_0.0.eajpp11:sisyphus+259318.100.1.3
java-11-openjdk-src                       java-11-openjdk-src                       =0:11.0.9.7-alt1_0.0.eajpp11
java-11-openjdk-src                       java-11-openjdk-src                       =0:11.0.9.7-alt1_0.0.eajpp11:sisyphus+259318.100.1.3
java-9-openjdk                            java-9-openjdk                            =0:9.0.4.11-alt4_6jpp9
java-9-openjdk                            java-9-openjdk                            =0:9.0.4.11-alt4_6jpp9:sisyphus+261340.100.1.1
java-9-openjdk-demo                       java-9-openjdk-demo                       =0:9.0.4.11-alt4_6jpp9
java-9-openjdk-demo                       java-9-openjdk-demo                       =0:9.0.4.11-alt4_6jpp9:sisyphus+261340.100.1.1
java-9-openjdk-javadoc                    java-9-openjdk-javadoc                    =0:9.0.4.11-alt4_6jpp9
java-9-openjdk-javadoc                    java-9-openjdk-javadoc                    =0:9.0.4.11-alt4_6jpp9:sisyphus+261340.100.1.1
java-9-openjdk-jmods                      java-9-openjdk-jmods                      =0:9.0.4.11-alt4_6jpp9
java-9-openjdk-jmods                      java-9-openjdk-jmods                      =0:9.0.4.11-alt4_6jpp9:sisyphus+261340.100.1.1
java-9-openjdk-src                        java-9-openjdk-src                        =0:9.0.4.11-alt4_6jpp9
java-9-openjdk-src                        java-9-openjdk-src                        =0:9.0.4.11-alt4_6jpp9:sisyphus+261340.100.1.1
jgit                                      jgit                                      =5.6.0-2.fc32
jgit                                      jgit                                      =5.6.0-alt0.1jpp:sisyphus+259536.100.1.1
junit                                     junit                                     =0:4.12
junit                                     junit                                     =1:4.12-alt1_13jpp8:sisyphus+246172.100.1.2
kernel-headers-modules-ovz-el7            kernel-headers-modules-ovz-el7            =1:3.10.0-alt4.1127.10.1.vz7.162.9:sisyphus+257217.100.1.1
kernel-headers-modules-ovz-el7            kernel-headers-modules-ovz-el7            =3.10.0-alt4.1127.10.1.vz7.162.9
kernel-headers-ovz-el7                    kernel-headers-ovz-el7                    =1:3.10.0-alt4.1127.10.1.vz7.162.9:sisyphus+257217.100.1.1
kernel-headers-ovz-el7                    kernel-headers-ovz-el7                    =3.10.0-alt4.1127.10.1.vz7.162.9
libatomic_ops-devel                       libatomic_ops-devel                       =7.6.8
libatomic_ops-devel                       libatomic_ops-devel                       =7.6.8-alt1:sisyphus+221466.100.1.2
libcal3d-devel                            libcal3d-devel                            =0.11.0-alt5_18
libcal3d-devel                            libcal3d-devel                            =0.11.0-alt5_18:sisyphus+257908.100.2.1
libcangjie-devel                          libcangjie-devel                          =1.3-alt2_2
libcangjie-devel                          libcangjie-devel                          =1.3-alt2_2:sisyphus+239104.100.1.1
libcerf-devel                             libcerf-devel                             =1.13-alt3_4
libcerf-devel                             libcerf-devel                             =1.13-alt3_4:sisyphus+257749.100.1.3
libcomps-devel                            libcomps-devel                            =0.1.15-alt1_2
libcomps-devel                            libcomps-devel                            =0.1.15-alt1_2:sisyphus+257616.100.1.1
libdsk-devel                              libdsk-devel                              =1.5.12-alt1_2
libdsk-devel                              libdsk-devel                              =1.5.12-alt1_2:sisyphus+261082.100.1.1
libefx-devel                              libefx-devel                              =1.9.99-alt2_2
libefx-devel                              libefx-devel                              =1:1.9.99-alt2_2
libevemu-devel                            libevemu-devel                            =2.7.0-alt2_3
libevemu-devel                            libevemu-devel                            =2.7.0-alt2_3:sisyphus+246972.100.1.1
libevhtp-devel                            libevhtp-devel                            =1.2.18-alt1_3
libevhtp-devel                            libevhtp-devel                            =1.2.18-alt1_3:sisyphus+260997.200.2.1
libexosip2-devel                          libexosip2-devel                          =5.0.0-alt1_2
libexosip2-devel                          libexosip2-devel                          =5.0.0-alt1_2:sisyphus+238299.100.1.1
libfuzzylite-devel                        libfuzzylite-devel                        =5.1-alt3
libfuzzylite-devel                        libfuzzylite-devel                        =5.1-alt3:sisyphus+232895.100.1.1
libgee0.6-devel                           libgee0.6-devel                           =0.6.8-alt1_10
libgee0.6-devel                           libgee0.6-devel                           =0.6.8-alt1_10:sisyphus+226087.100.1.1
libgnomeoffice0.10-devel                  libgnomeoffice0.10-devel                  =0.10.48-alt1
libgnomeoffice0.10-devel                  libgnomeoffice0.10-devel                  =0.10.48-alt1:sisyphus+256499.100.1.2
libgnutls-devel                           libgnutls-devel                           =3.6.15
libgnutls-devel                           libgnutls-devel                           =3.6.15-alt1:sisyphus+257742.200.2.1
libldm1.0-devel                           libldm1.0-devel                           =0.2.4-alt1_2
libldm1.0-devel                           libldm1.0-devel                           =0.2.4-alt1_2:sisyphus+246548.100.1.1
liblscp-devel                             liblscp-devel                             =0.6.2-alt1_1
liblscp-devel                             liblscp-devel                             =0.6.2-alt1_1:sisyphus+249669.100.1.1
libmirisdr-devel                          libmirisdr-devel                          =0.0.20130608-alt1_7
libmirisdr-devel                          libmirisdr-devel                          =0.0.20130608-alt1_7:sisyphus+246944.100.1.2
libmsym-devel                             libmsym-devel                             =0.2.3-alt2_4
libmsym-devel                             libmsym-devel                             =0.2.3-alt2_4:sisyphus+246929.100.1.1
libnatpmp-devel                           libnatpmp-devel                           =20150609-alt1_4
libnatpmp-devel                           libnatpmp-devel                           =20150609-alt1_4:sisyphus+254043.100.1.1
libnet-snmp-devel                         libnet-snmp-devel                         =5.8-alt1
libnet-snmp-devel                         libnet-snmp-devel                         =5.8-alt1:sisyphus+258375.7300.16.2
libnetcdf_c++-4-mpi                       libnetcdf_c++-4-mpi                       =4.2-alt5
libnetcdf_c++-4-mpi                       libnetcdf_c++-4-mpi                       =4.2-alt5:sisyphus+258249.100.1.1
libnetcdf_c++4-1-mpi                      libnetcdf_c++4-1-mpi                      =4.3.0-alt2
libnetcdf_c++4-1-mpi                      libnetcdf_c++4-1-mpi                      =4.3.0-alt2:sisyphus+258250.100.1.1
libnetcdff6-mpi                           libnetcdff6-mpi                           =4.4.4-alt2
libnetcdff6-mpi                           libnetcdff6-mpi                           =4.4.4-alt2:sisyphus+258251.100.1.1
libnvidia-compiler                        libnvidia-compiler                        =450.80.02-alt1
libnvidia-compiler                        libnvidia-compiler                        =450.80.02-alt1:sisyphus+259028.300.1.1
libnvidia-ml                              libnvidia-ml                              =450.80.02-alt1
libnvidia-ml                              libnvidia-ml                              =450.80.02-alt1:sisyphus+259028.300.1.1
libnvidia-opencl                          libnvidia-opencl                          =450.80.02-alt1
libnvidia-opencl                          libnvidia-opencl                          =450.80.02-alt1:sisyphus+259028.300.1.1
libnvidia-ptxjitcompiler                  libnvidia-ptxjitcompiler                  =450.80.02-alt1
libnvidia-ptxjitcompiler                  libnvidia-ptxjitcompiler                  =450.80.02-alt1:sisyphus+259028.300.1.1
libopencdk-devel                          libopencdk-devel                          =0.6.6-alt1_15
libopencdk-devel                          libopencdk-devel                          =0.6.6-alt1_15:sisyphus+237752.100.1.1
libopennet-devel                          libopennet-devel                          =0.9.9
libopennet-devel                          libopennet-devel                          =0.9.9-alt1_10:sisyphus+257623.100.1.1
libosip2-devel                            libosip2-devel                            =5.0.0-alt1_3
libosip2-devel                            libosip2-devel                            =5.0.0-alt1_3:sisyphus+223875.100.1.1
libredblack-devel                         libredblack-devel                         =1.3-alt1_4
libredblack-devel                         libredblack-devel                         =1.3-alt1_4:sisyphus+242299.100.1.1
librpmconstant-devel                      librpmconstant-devel                      =0.1.5-alt1_1
librpmconstant-devel                      librpmconstant-devel                      =0.1.5-alt1_1:sisyphus+237747.100.1.1
libsecp256k1-devel                        libsecp256k1-devel                        =0.22.0-alt1_1
libsecp256k1-devel                        libsecp256k1-devel                        =0.22.0-alt1_1:sisyphus+257624.100.1.1
libsidutils-devel                         libsidutils-devel                         =2.1.1-alt1_24
libsidutils-devel                         libsidutils-devel                         =2.1.1-alt1_24:sisyphus+221557.100.1.1
libstatgrab-devel                         libstatgrab-devel                         =0.92-alt1_1
libstatgrab-devel                         libstatgrab-devel                         =0.92-alt1_1:sisyphus+235591.100.1.1
libsvg-cairo-devel                        libsvg-cairo-devel                        =0.1.6
libsvg-cairo-devel                        libsvg-cairo-devel                        =0.1.6-alt2_20
libsvg-devel                              libsvg-devel                              =0.1.4
libsvg-devel                              libsvg-devel                              =0.1.4-alt2_24:sisyphus+257625.100.1.1
libticables-devel                         libticables-devel                         =1.3.4-alt1_1
libticables-devel                         libticables-devel                         =1:1.3.4-alt1_1
libticables2-devel                        libticables2-devel                        =1.3.5-alt1_4
libticables2-devel                        libticables2-devel                        =1.3.5-alt1_4:sisyphus+226108.100.1.2
libticalcs2-devel                         libticalcs2-devel                         =1.1.9-alt1_2
libticalcs2-devel                         libticalcs2-devel                         =1.1.9-alt1_2:sisyphus+226109.100.1.2
libticonv-devel                           libticonv-devel                           =1.1.5-alt1_1
libticonv-devel                           libticonv-devel                           =1.1.5-alt1_1:sisyphus+226110.100.1.2
libtifiles2-devel                         libtifiles2-devel                         =1.1.7-alt1_3
libtifiles2-devel                         libtifiles2-devel                         =1.1.7-alt1_3:sisyphus+226111.100.1.2
libtorque-devel                           libtorque-devel                           =6.1.2-alt3_5
libtorque-devel                           libtorque-devel                           =6.1.2-alt3_5:sisyphus+257844.100.1.1
libucd-snmp-devel                         libucd-snmp-devel                         =5.8
libucd-snmp-devel                         libucd-snmp-devel                         =5.8-alt1:sisyphus+258375.7300.16.2
libucil-devel                             libucil-devel                             =0.9.10-alt3_12
libucil-devel                             libucil-devel                             =0.9.10-alt3_12:sisyphus+233445.100.1.1
libvalhalla-devel                         libvalhalla-devel                         =2.0.0-alt2_16
libvalhalla-devel                         libvalhalla-devel                         =2.0.0-alt2_16:sisyphus+226112.100.1.2
libwlocate-devel                          libwlocate-devel                          =1.1-alt2_10.git20130127
libwlocate-devel                          libwlocate-devel                          =1.1-alt2_10.git20130127:sisyphus+235345.100.1.1
libx86emu-devel                           libx86emu-devel                           =3.1-alt1_1
libx86emu-devel                           libx86emu-devel                           =3.1-alt1_1:sisyphus+248432.100.1.1
libyaml-cpp0                              libyaml-cpp0                              =0.6.3-alt1
libyaml-cpp0                              libyaml-cpp0                              =0.6.3-alt1:sisyphus+253296.100.1.1
moodle-apache2                            moodle-apache2                            =3.10.0-alt1
moodle-apache2                            moodle-apache2                            =3.10.0-alt1:sisyphus+261207.100.2.1
moodle-local-mysql                        moodle-local-mysql                        =3.10.0-alt1
moodle-local-mysql                        moodle-local-mysql                        =3.10.0-alt1:sisyphus+261207.100.2.1
nemo                                      nemo                                      =4.6.5-alt1
nemo                                      nemo                                      =4.6.5-alt1:sisyphus+257314.500.2.1
ocaml-runtime                             ocaml-runtime                             =4.10
ocaml-runtime                             ocaml-runtime                             =4.10.0-alt2:sisyphus+257691.100.1.1
ossec-hids-server                         ossec-hids-server                         =3.1.0-alt2
ossec-hids-server                         ossec-hids-server                         =3.1.0-alt2:sisyphus+238323.100.1.1
perl-SGMLSpm                              perl-SGMLSpm                              =1.03ii-alt6
perl-SGMLSpm                              perl-SGMLSpm                              =1:1.1-alt1:sisyphus+222076.100.1.1
php7                                      php7                                      =7.4.12-alt1
php7                                      php7                                      =7.4.12-alt1:sisyphus+260638.200.8.1
php7-devel                                php7-devel                                =7.4.12-alt1
php7-devel                                php7-devel                                =7.4.12-alt1:sisyphus+260638.200.8.1
php7-libs                                 php7-libs                                 =7.4.12-alt1
php7-libs                                 php7-libs                                 =7.4.12-alt1:sisyphus+260638.200.8.1
php7-mysqlnd                              php7-mysqlnd                              =7.4.12-alt1
php7-mysqlnd                              php7-mysqlnd                              =7.4.12-alt1:sisyphus+260638.200.8.1
python-relaxed                            python-relaxed                            =2.7.18-alt1
python-relaxed                            python-relaxed                            =2.7.18-alt1:sisyphus+255741.100.1.1
python-strict                             python-strict                             =2.7.18-alt1
python-strict                             python-strict                             =2.7.18-alt1:sisyphus+255741.100.1.1
python3-module-elftools                   python3-module-elftools                   =0.22-alt2.git20130619.a1d9681
python3-module-elftools                   python3-module-elftools                   =0.22-alt2.git20130619.a1d9681:sisyphus+258182.100.1.1
rpm-macros-intro-conflicts                rpm-macros-intro-conflicts                =2.2.5-alt1
rpm-macros-intro-conflicts                rpm-macros-intro-conflicts                =2.2.5-alt1:sisyphus+260977.100.1.1
ruby-oedipus-lex                          ruby-oedipus-lex                          =2.5.1-alt1
ruby-oedipus-lex                          ruby-oedipus-lex                          =2.5.1-alt1:sisyphus+231621.116400.57.1
tremulous-client                          tremulous-client                          =1.2.0-alt2
tremulous-client                          tremulous-client                          =1.2.0-alt2:sisyphus+238695.100.1.1
tycho                                     tycho                                     =1.3.0-4.fc30
tycho                                     tycho                                     =1.3.0-alt0.1jpp:sisyphus+234227.100.1.1
virtualbox-guest-common                   virtualbox-guest-common                   =6.1.12a-alt2:sisyphus+255260.100.1.1
virtualbox-guest-common                   virtualbox-guest-common                   =6.1.8
virtualbox-guest-common-vboxguest         virtualbox-guest-common-vboxguest         =6.1.12a-alt2:sisyphus+255260.100.1.1
virtualbox-guest-common-vboxguest         virtualbox-guest-common-vboxguest         =6.1.8
virtualbox-guest-common-vboxvideo         virtualbox-guest-common-vboxvideo         =6.1.12a-alt2:sisyphus+255260.100.1.1
virtualbox-guest-common-vboxvideo         virtualbox-guest-common-vboxvideo         =6.1.8
virtualgl                                 virtualgl                                 =2.6.4-alt2
virtualgl                                 virtualgl                                 =2.6.4-alt2:sisyphus+257997.200.2.1
virtualgl-devel                           virtualgl-devel                           =2.6.4-alt2
virtualgl-devel                           virtualgl-devel                           =2.6.4-alt2:sisyphus+257997.200.2.1
vnstat-server                             vnstat-server                             =2.6-alt1
vnstat-server                             vnstat-server                             =2.6-alt1:sisyphus+249179.100.1.1
vnstat-vnstati                            vnstat-vnstati                            =2.6-alt1
vnstat-vnstati                            vnstat-vnstati                            =2.6-alt1:sisyphus+249179.100.1.1
wallpapers-spring-cherry-standard-screen  wallpapers-spring-cherry-standard-screen  =20090517-alt3
wallpapers-spring-cherry-standard-screen  wallpapers-spring-cherry-standard-screen  =20090517-alt3:sisyphus+257571.100.1.1
wallpapers-spring-cherry-widescreen       wallpapers-spring-cherry-widescreen       =20090517-alt3
wallpapers-spring-cherry-widescreen       wallpapers-spring-cherry-widescreen       =20090517-alt3:sisyphus+257571.100.1.1


-- 
ldv


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: duplicate self-provides
  2020-11-11 14:19 [devel] I: duplicate self-provides Dmitry V. Levin
@ 2020-11-11 14:53 ` Dmitry V. Levin
  2020-11-11 15:03   ` Michael Shigorin
  2020-11-12  9:50 ` Dmitry V. Levin
  1 sibling, 1 reply; 9+ messages in thread
From: Dmitry V. Levin @ 2020-11-11 14:53 UTC (permalink / raw)
  To: ALT Devel discussion list

On Wed, Nov 11, 2020 at 05:19:19PM +0300, Dmitry V. Levin wrote:
> Hi,
> 
> У нас в репозитории обнаружилось 119 пакетов, которые содержат сразу 2
> разные версии самого себя в Provides.  Полагаю, что во всех случаях это
> ошибки, поскольку сравнения версий в rpm работают не так, как ожидают
> люди, когда у пакета больше одной версии.
> 
> Больше половины таких пакетов (62 из 119) содержат символ подчёркивания
> в релизе, что, как правило, говорит об их автоимпортном происхождении.

И ещё несколько похожих дубликатов по виртуальным пакетам,
очень похожим на self-provides:

Package:                    Provide Name:         Provide Version:
java-10-openjdk             java                  =0:10
java-10-openjdk             java                  =0:10.0.2.13-alt2_7jpp9
java-10-openjdk-headless    java-headless         =0:10
java-10-openjdk-headless    java-headless         =0:10.0.2.13-alt2_7jpp9
java-1.8.0-openjdk-javadoc  java-javadoc          =0:1.8.0.212.b04-alt2_0jpp8
java-1.8.0-openjdk-javadoc  java-javadoc          =1:1.9.0
javapackages-tools          jpackage-utils        =1:5.0.0
javapackages-tools          jpackage-utils        =5.3.0-alt1_4jpp8
libirrlicht1                libirrlicht           =1.8.4
libirrlicht1                libirrlicht           =1.8.4-alt2


-- 
ldv


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: duplicate self-provides
  2020-11-11 14:53 ` Dmitry V. Levin
@ 2020-11-11 15:03   ` Michael Shigorin
  2020-11-11 15:09     ` Dmitry V. Levin
  0 siblings, 1 reply; 9+ messages in thread
From: Michael Shigorin @ 2020-11-11 15:03 UTC (permalink / raw)
  To: devel

On Wed, Nov 11, 2020 at 05:53:08PM +0300, Dmitry V. Levin wrote:
> И ещё несколько похожих дубликатов по виртуальным пакетам,
> очень похожим на self-provides:
> 
> Package:                    Provide Name:         Provide Version:
> libirrlicht1                libirrlicht           =1.8.4
> libirrlicht1                libirrlicht           =1.8.4-alt2

* Tue Jun 11 2019 Michael Shigorin <mike@altlinux.org> 1.8.4-alt2
- Added P: libirrlicht = %version-%release for -devel

Как бы ты переделал, или строгие зависимости там вручную
расставлять уже и не надо?

-- 
 ---- WBR, Michael Shigorin / http://altlinux.org
  ------ http://opennet.ru / http://anna-news.info


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: duplicate self-provides
  2020-11-11 15:03   ` Michael Shigorin
@ 2020-11-11 15:09     ` Dmitry V. Levin
  2020-11-11 15:25       ` Michael Shigorin
  2020-11-11 17:48       ` mikhailnov
  0 siblings, 2 replies; 9+ messages in thread
From: Dmitry V. Levin @ 2020-11-11 15:09 UTC (permalink / raw)
  To: ALT Devel discussion list

On Wed, Nov 11, 2020 at 06:03:20PM +0300, Michael Shigorin wrote:
> On Wed, Nov 11, 2020 at 05:53:08PM +0300, Dmitry V. Levin wrote:
> > И ещё несколько похожих дубликатов по виртуальным пакетам,
> > очень похожим на self-provides:
> > 
> > Package:                    Provide Name:         Provide Version:
> > libirrlicht1                libirrlicht           =1.8.4
> > libirrlicht1                libirrlicht           =1.8.4-alt2
> 
> * Tue Jun 11 2019 Michael Shigorin <mike@altlinux.org> 1.8.4-alt2
> - Added P: libirrlicht = %version-%release for -devel
> 
> Как бы ты переделал, или строгие зависимости там вручную
> расставлять уже и не надо?

Там в спеке сейчас написано:
Provides: liblibirrlicht1 = %EVR
Obsoletes: liblibirrlicht1 < %EVR
Conflicts: liblibirrlicht1 < %EVR
Provides: libirrlicht = %version
Provides: libirrlicht = %version-%release
Obsoletes: libirrlicht < 1.8
Conflicts: libirrlicht < 1.8

Это явно избыточно,
Conflicts при наличии Provides+Obsoletes вообще лишний, я бы оставил
Provides: liblibirrlicht1 = %EVR
Obsoletes: liblibirrlicht1 < %EVR
Provides: libirrlicht = %EVR
Obsoletes: libirrlicht < %EVR


-- 
ldv


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: duplicate self-provides
  2020-11-11 15:09     ` Dmitry V. Levin
@ 2020-11-11 15:25       ` Michael Shigorin
  2020-11-11 17:48       ` mikhailnov
  1 sibling, 0 replies; 9+ messages in thread
From: Michael Shigorin @ 2020-11-11 15:25 UTC (permalink / raw)
  To: devel

On Wed, Nov 11, 2020 at 06:09:40PM +0300, Dmitry V. Levin wrote:
> > Как бы ты переделал, или строгие зависимости там вручную
> > расставлять уже и не надо?
> Conflicts при наличии Provides+Obsoletes вообще лишний,
> я бы оставил [...]

Действительно; #261570 и спасибо.

-- 
 ---- WBR, Michael Shigorin / http://altlinux.org
  ------ http://opennet.ru / http://anna-news.info


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: duplicate self-provides
  2020-11-11 15:09     ` Dmitry V. Levin
  2020-11-11 15:25       ` Michael Shigorin
@ 2020-11-11 17:48       ` mikhailnov
  2020-11-11 21:26         ` Dmitry V. Levin
  1 sibling, 1 reply; 9+ messages in thread
From: mikhailnov @ 2020-11-11 17:48 UTC (permalink / raw)
  To: devel

11.11.2020 18:09, Dmitry V. Levin пишет:
> On Wed, Nov 11, 2020 at 06:03:20PM +0300, Michael Shigorin wrote:
>> On Wed, Nov 11, 2020 at 05:53:08PM +0300, Dmitry V. Levin wrote:
>>> И ещё несколько похожих дубликатов по виртуальным пакетам,
>>> очень похожим на self-provides:
>>>
>>> Package:                    Provide Name:         Provide Version:
>>> libirrlicht1                libirrlicht           =1.8.4
>>> libirrlicht1                libirrlicht           =1.8.4-alt2
>> * Tue Jun 11 2019 Michael Shigorin <mike@altlinux.org> 1.8.4-alt2
>> - Added P: libirrlicht = %version-%release for -devel
>>
>> Как бы ты переделал, или строгие зависимости там вручную
>> расставлять уже и не надо?
> Там в спеке сейчас написано:
> Provides: liblibirrlicht1 = %EVR
> Obsoletes: liblibirrlicht1 < %EVR
> Conflicts: liblibirrlicht1 < %EVR
> Provides: libirrlicht = %version
> Provides: libirrlicht = %version-%release
> Obsoletes: libirrlicht < 1.8
> Conflicts: libirrlicht < 1.8
>
> Это явно избыточно,
> Conflicts при наличии Provides+Obsoletes вообще лишний, я бы оставил
А почему лишний? Если есть конфликты по файлам, лишний?
> Provides: liblibirrlicht1 = %EVR
> Obsoletes: liblibirrlicht1 < %EVR
> Provides: libirrlicht = %EVR
> Obsoletes: libirrlicht < %EVR
>
>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: duplicate self-provides
  2020-11-11 17:48       ` mikhailnov
@ 2020-11-11 21:26         ` Dmitry V. Levin
  0 siblings, 0 replies; 9+ messages in thread
From: Dmitry V. Levin @ 2020-11-11 21:26 UTC (permalink / raw)
  To: ALT Devel discussion list

On Wed, Nov 11, 2020 at 08:48:35PM +0300, mikhailnov@altlinux.org wrote:
> 11.11.2020 18:09, Dmitry V. Levin пишет:
> > On Wed, Nov 11, 2020 at 06:03:20PM +0300, Michael Shigorin wrote:
> >> On Wed, Nov 11, 2020 at 05:53:08PM +0300, Dmitry V. Levin wrote:
> >>> И ещё несколько похожих дубликатов по виртуальным пакетам,
> >>> очень похожим на self-provides:
> >>>
> >>> Package:                    Provide Name:         Provide Version:
> >>> libirrlicht1                libirrlicht           =1.8.4
> >>> libirrlicht1                libirrlicht           =1.8.4-alt2
> >> * Tue Jun 11 2019 Michael Shigorin <mike@altlinux.org> 1.8.4-alt2
> >> - Added P: libirrlicht = %version-%release for -devel
> >>
> >> Как бы ты переделал, или строгие зависимости там вручную
> >> расставлять уже и не надо?
> > Там в спеке сейчас написано:
> > Provides: liblibirrlicht1 = %EVR
> > Obsoletes: liblibirrlicht1 < %EVR
> > Conflicts: liblibirrlicht1 < %EVR
> > Provides: libirrlicht = %version
> > Provides: libirrlicht = %version-%release
> > Obsoletes: libirrlicht < 1.8
> > Conflicts: libirrlicht < 1.8
> >
> > Это явно избыточно,
> > Conflicts при наличии Provides+Obsoletes вообще лишний, я бы оставил
> А почему лишний? Если есть конфликты по файлам, лишний?

С одной стороны, если пакет B содержит Obsoletes пакета A, то
установка пакета B автоматически приводит к удалению пакета A.

С другой стороны, довольно сложно с помощью apt поставить пакет A, если
уже установлен пакет B, который одновременно Provides A и Obsoletes A.


-- 
ldv


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: duplicate self-provides
  2020-11-11 14:19 [devel] I: duplicate self-provides Dmitry V. Levin
  2020-11-11 14:53 ` Dmitry V. Levin
@ 2020-11-12  9:50 ` Dmitry V. Levin
  2020-11-12 11:17   ` Anton Farygin
  1 sibling, 1 reply; 9+ messages in thread
From: Dmitry V. Levin @ 2020-11-12  9:50 UTC (permalink / raw)
  To: ALT Devel discussion list

On Wed, Nov 11, 2020 at 05:19:19PM +0300, Dmitry V. Levin wrote:
> Hi,
> 
> У нас в репозитории обнаружилось 119 пакетов, которые содержат сразу 2
> разные версии самого себя в Provides.  Полагаю, что во всех случаях это
> ошибки, поскольку сравнения версий в rpm работают не так, как ожидают
> люди, когда у пакета больше одной версии.
> 
> Больше половины таких пакетов (62 из 119) содержат символ подчёркивания
> в релизе, что, как правило, говорит об их автоимпортном происхождении.
> 
> Видимо, удобнее всего пресекать такие ошибки на стадии sisyphus_check.

Видимо, исправлять все эти спеки долго и лениво, поэтому я просто добавил
игнорирование self-provides прямо в rpm-build.  Таким образом, при
следующей сборке исходных пакетов, перечисленных ниже, эти дубликаты
пропадут со следующей диагностикой (на примере пакета aalib):

warning: ignored self-provides: aalib = 1.4rc5
warning: ignored self-provides: aalib-devel = 1.4rc5

Имена исходных пакетов:
aalib
cal3d
eclipse-equinox-osgi
eclipse-jdt
eclipse-swt
efx
erlang
evemu
exosip
firmware-acx100
firmware-ipw2200
fuzzylite
gnupg-manual-en
gnupg-manual-ru
gnutls30
hydra
java-1.8.0-openjdk
java-10-openjdk
java-11-openjdk
java-9-openjdk
jgit
junit
kernel-image-ovz-el7
libatomic_ops
libcangjie
libcerf
libcomps
libdsk
libevhtp
libgee0.6
libldm
liblscp
libmirisdr
libmsym
libnatpmp
libnetcdf_c++-4-mpi
libnetcdf_c++4-1-mpi
libnetcdff6-mpi
libopennet
libosip2
libredblack
libsecp256k1
libstatgrab
libsvg
libsvg-cairo
libticables
libticables2
libticalcs2
libticonv
libtifiles2
libucil
libvalhalla
libwlocate
libx86emu
libyaml-cpp0
moodle
nemo
net-snmp35
nvidia_glx_src
ocaml
opencdk
ossec-hids
perl-SGMLSpm
php7
python
python3-module-elftools
rpmconstant
ruby-oedipus-lex
sidplay-libs
torque
tremulous
tycho
virtualbox
virtualgl
wallpapers-spring-cherry


-- 
ldv


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [devel] I: duplicate self-provides
  2020-11-12  9:50 ` Dmitry V. Levin
@ 2020-11-12 11:17   ` Anton Farygin
  0 siblings, 0 replies; 9+ messages in thread
From: Anton Farygin @ 2020-11-12 11:17 UTC (permalink / raw)
  To: devel

On 12.11.2020 12:50, Dmitry V. Levin wrote:
> Видимо, исправлять все эти спеки долго и лениво, поэтому я просто добавил
> игнорирование self-provides прямо в rpm-build.  Таким образом, при
> следующей сборке исходных пакетов, перечисленных ниже, эти дубликаты
> пропадут со следующей диагностикой (на примере пакета aalib):

Спасибо.



^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2020-11-12 11:17 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-11 14:19 [devel] I: duplicate self-provides Dmitry V. Levin
2020-11-11 14:53 ` Dmitry V. Levin
2020-11-11 15:03   ` Michael Shigorin
2020-11-11 15:09     ` Dmitry V. Levin
2020-11-11 15:25       ` Michael Shigorin
2020-11-11 17:48       ` mikhailnov
2020-11-11 21:26         ` Dmitry V. Levin
2020-11-12  9:50 ` Dmitry V. Levin
2020-11-12 11:17   ` Anton Farygin

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