[devel] python3-3.5 unmets

Ivan Zakharyaschev imz на altlinux.org
Ср Мар 9 11:50:07 MSK 2016


On Fri, 4 Mar 2016, Ivan Zakharyaschev wrote:

> Если отделить множество пакетов, в которых есть .so (все остальные, мы 
> предполагаем, не линкуются с libpython при работе и их можно, переложив и 
> обработав автогенератором зависимостей, оставить и они будут работать с 
> python3-3.5), то можно насчитать 250 пакетов (которые будут пересобираться 
> одновременно в одном задании с новой версией python3, на втором этапе):
>
> $ ./print-section_unmets events.5.1.log | cut -d'#' --fields=1 | sort -u | 
> join -t$'\t' -2 2 - <(sort -t$'\t' -k2 < 
> /ALT/Sisyphus/x86_64/base/contents_index) | egrep '\.so($|\.)' | cut -d$'\t' 
> --fields=1 | uniq | wc -l
> 259

> Напишу в конце список.

Сейчас, когда в целом всё подготовлено для пересборки с более точными и во 
множестве пакетов более слабыми зависимостями, хочется разобраться вот в 
таком вопросе про эти .so:

python3.req.py получает на рассмотрение только .so по шаблону 
*/python3*/*.so

Я же выше на всякий случай искал все .so в пакетах.

Проверим несовпаденя.

Из этого списка файлов .so и пакетов уберём сначала те, в которых есть 
пути в site-packages (чтобы сразу много убрать из рассмотрения).
(На самом деле зря. Надо было всё проверять.)

Оставшееся пакеты проверим на то, чтобы у них либо была зависимость на 
libpython, либо файлы, подпадающие под этот шаблон */python3*/*.so, 
который будет вызывать зависимость на python3.3-ABI.

Если ни того, ни другого нет, гарантирующего привязку к версии питона, 
обратим внимание на этот пакет (внизу в скрипте напротив него будет 
пусто):

$ for p in $(./print-section_unmets events.5.1.log | cut -d'#' --fields=1 | sort -u | fgrep -v -x $'LibreOffice-common\npython3-test' | join -t$'\t' -2 2 - <(sort -t$'\t' -k2 < /ALT/Sisyphus/x86_64/base/contents_index) | egrep '\.so($|\.)' | egrep -v '/usr/lib(|64)/python3\.3/site-packages' | cut --fields=1 | sort -u ); do echo -n "$p: "; f="$(./getRPMForPkgnames.sh "$p")"; { rpm -qp "$f" --requires | fgrep libpython; } || { rpm -qp "$f" -l | egrep '/python3.*/.*\.so$' | xargs echo; } || echo '???'; done
boost-python3-devel:
engrid:
eog-plugins:
gedit:
gedit-plugins:
gitg:
gnome-builder: libpython3.3m.so.1.0()(64bit) >= set:ojiZhTKylwsDM9yCCTgb9vw6pALZpBUm7xVLRPiAeqW9H1Y9aUJ8ym1Uy0FARIu66V2GO8XU0EMGpshMY2Y4hRYR0
gnome-music:
gnome-shell:
libgit2-glib:
libnumpy-py3-devel: /usr/lib64/python3.3/site-packages/numpy/core/lib/libnpymath3.so
libpeas-python3-loader: libpython3.3m.so.1.0()(64bit) >= set:oiqVkAUsy8ACvxk2p2DofRKiVrEBAfEh67iZFcdYqiCKsR9XTWp9i3GH8LAXnhwZhuniyiZbI3uAfVMTy0lOqHDNx1Qp5se8LlOeeETCrpeP51oB1pshw8LsIR4iR
libpyside-qt4-py3: libpython3.3m.so.1.0()(64bit) >= set:oha0ppmlcyDVIRMBvVYf4Rm8icJ22i94FZkJ8Ye46OjpH0hyzSt9zRHY0WEoaHqMEUVnD1YRTcPWBrabQi0Su0YQ6r1ZK80wWscDkKx991pvmeo4sWj0x4or4dslC5fc0l9mDVjUw7IJN5mtmi7xsX9TxGI7myC1qzNsuItJqlAYwC1XNqENXTzk9qs95
libshiboken-py3: libpython3.3m.so.1.0()(64bit) >= set:ohEBjfqtP4bZym5H659cQQdkFKFW295y81ktTswkAwbTNB1Qygt8Z7dE6cKJ9FLYZfoe1kWZ5VNDwbxRDeFTQR4nYY7iysOpV2VGVWYuIMjvnvBn3ZdWNiA2SBm2kehAiFoYG1rkK30Iz38h3j62gtZAC13wgItp53ZL8vmt778QY9tss2MRUAXglS3bhzlkMVtMNwThxLb0VHFk4z1actCqM817rZ043vgi9q0
pitivi:
python3-module-CVC4: /usr/lib64/python3.3/site-packages/_CVC4.so
python3-module-pygobject: /usr/lib64/python3.3/site-packages/glib/_glib.so /usr/lib64/python3.3/site-packages/gobject/_gobject.so
python3-module-pygobject-devel:
totem-plugins:
weechat-plugin-python: libpython3.3m.so.1.0()(64bit) >= set:oipC2yNcWvlG7aFZp9VWLsm3CohA4KmZjOlyrNPA8gsq8sc4suj8zRUNKVfK0Qa04r1oZhf0dxsJHZrXfahnOvhgq1hrTBZisDZJ

(добавил ещё потом проверку на 'python3 =', список не изменился.)

Вот вопрос: если у python сменится версия с 3.3 на 3.5, будут ли они 
работать? Или привязка к версии питона как-то реализована в их 
зависимостях?

Вопрос про те, у которых пусто; *-devel можно пропустить:

engrid
eog-plugins
gedit
gedit-plugins
gitg
gnome-music
gnome-shell
libgit2-glib
pitivi
totem-plugins

Если есть связь с версией питона, как её можно было бы обнаруживать?

-- 
Best regards,
Ivan


> On Wed, 2 Mar 2016, Ivan Zakharyaschev wrote:
>
>> > >   (Эти наколеночные скрипты, которыми я манипулирую списки пакетов для 
>> > >   тестовых пересборок множества питоновских пакетов, в т.ч. вот этот 
>> > >   для уточнения пересечения affected packages и списка 
>> > >   непересобирающихся от beehive, сохранил в
>> >   git.alt:/people/imz/public/mosquito-hive )
>
> LibreOffice пропускаем.
>
> $ ./list-srpms-for-rpms.sh $(./print-section_unmets events.5.1.log | cut 
> -d'#' --fields=1 | sort -u | join -t$'\t' -2 2 - <(sort -t$'\t' -k2 < 
> /ALT/Sisyphus/x86_64/base/contents_index) | egrep '\.so($|\.)' | cut -d$'\t' 
> --fields=1 | uniq) | ./stripVerRel
> LibreOffice
> aimc
> bedup
> blueman
> boost
> borg
> brltty
> canto-curses
> cracklib
> cvc4
> engrid
> eog-plugins
> fityk
> gdal
> gedit
> gedit-plugins
> geos
> gitg
> gnome-builder
> gnome-music
> gnome-shell
> h5py
> libcap-ng
> libgit2-glib
> libpeas
> libpwquality
> libseccomp
> libxml2
> libxtract
> log4cplus
> logtop
> pdb-clone
> picosat
> pitivi
> protobuf
> pyside-qt4-py3
> pytables
> python-module-BTrees
> python-module-Cython
> python-module-DAGPype
> python-module-DIRECT
> python-module-Levenshtein
> python-module-MySQLdb
> python-module-Naked
> python-module-OpenGL_accelerate
> python-module-Pillow
> python-module-PyMca
> python-module-PyQt4
> python-module-PyQt5
> python-module-RRDtool
> python-module-Reportlab
> python-module-SQLAlchemy
> python-module-affinegap
> python-module-alsaaudio
> python-module-apsw
> python-module-asa
> python-module-asyncio_mongo
> python-module-banyan
> python-module-bcrypt
> python-module-bintrees
> python-module-blist
> python-module-blosc
> python-module-bottleneck
> python-module-bsddb3
> python-module-cHaversine
> python-module-casuarius
> python-module-cdecimal
> python-module-cffi
> python-module-cheetah
> python-module-cobs
> python-module-coverage
> python-module-credis
> python-module-cryptacular
> python-module-cryptography
> python-module-cups
> python-module-curve25519
> python-module-cvxopt
> python-module-cx-freeze
> python-module-cyrand
> python-module-dbus
> python-module-dedupe-hcluster
> python-module-distance
> python-module-djvulibre
> python-module-ed25519
> python-module-efl
> python-module-ephem
> python-module-faketime
> python-module-fastbit
> python-module-fiona
> python-module-freetypy
> python-module-gevent
> python-module-gist
> python-module-gmpy
> python-module-gmpy2
> python-module-gnureadline
> python-module-greenlet
> python-module-gst1.0
> python-module-hiredis
> python-module-hmmlearn
> python-module-http-parser
> python-module-icu
> python-module-igakit
> python-module-islpy
> python-module-jellyfish
> python-module-jenkins
> python-module-jq
> python-module-kaa-base
> python-module-kmod
> python-module-lcms
> python-module-leveldb
> python-module-libacl
> python-module-libvirt
> python-module-llfuse
> python-module-llist
> python-module-lmdb
> python-module-logbook
> python-module-lxml
> python-module-lz4
> python-module-markupsafe
> python-module-mathutils
> python-module-matplotlib
> python-module-mehcode-xmlsec
> python-module-meshpy
> python-module-minipg
> python-module-mistune
> python-module-mozsci
> python-module-mpi4py
> python-module-mpl_toolkits.basemap
> python-module-msgpack
> python-module-mysqlclient
> python-module-netCDF4
> python-module-netifaces
> python-module-nssjson
> python-module-numexpr
> python-module-numpy
> python-module-pandas
> python-module-parted
> python-module-persistent
> python-module-petlib
> python-module-poppler-qt4
> python-module-poppler-qt5
> python-module-psutil
> python-module-psycopg2
> python-module-psycopg2cffi
> python-module-pulsar
> python-module-pyScss
> python-module-pyaio
> python-module-pyasn
> python-module-pyaxon
> python-module-pybluez
> python-module-pycares
> python-module-pyclipper
> python-module-pycosat
> python-module-pycrypto
> python-module-pycudd
> python-module-pycurl
> python-module-pyev
> python-module-pyfits
> python-module-pygibson
> python-module-pygobject3
> python-module-pygraphviz
> python-module-pyhacrf
> python-module-pylbfgs
> python-module-pylibmc
> python-module-pylzma
> python-module-pymc
> python-module-pymetis
> python-module-pymongo
> python-module-pyproj
> python-module-pysndfile
> python-module-pysqlcipher3
> python-module-pysubnettree
> python-module-pysvn
> python-module-pyublas
> python-module-pyuv
> python-module-pyxattr
> python-module-rasterio
> python-module-rjsmin
> python-module-rpy2
> python-module-scikit-image
> python-module-scikit-learn
> python-module-scikits.audiolab
> python-module-scikits.bvp_solver
> python-module-scikits.eartho
> python-module-scikits.odes
> python-module-scikits.samplerate
> python-module-scikits.scattpy
> python-module-scikits.sparse
> python-module-scikits.statsmodels
> python-module-scikits.umfpack
> python-module-scikits.vectorplot
> python-module-scipy
> python-module-seqlearn
> python-module-setproctitle
> python-module-shapely
> python-module-signalfd
> python-module-simplejson
> python-module-sip
> python-module-smbc
> python-module-snappy
> python-module-systemd
> python-module-sysv_ipc
> python-module-tagpy
> python-module-timelib
> python-module-tinycss
> python-module-tornado
> python-module-triangle
> python-module-ujson
> python-module-urwid
> python-module-utmp
> python-module-veusz
> python-module-virtkey
> python-module-wrapt
> python-module-wsaccel
> python-module-yajl
> python-module-yaml
> python-module-zc.twist
> python-module-zmq
> python-module-zodbpickle
> python-module-zope.container
> python-module-zope.hookable
> python-module-zope.i18nmessageid
> python-module-zope.index
> python-module-zope.interface
> python-module-zope.proxy
> python-module-zope.security
> python3
> python3-module-cnamedtuple
> python3-module-dulwich
> python3-module-fuse
> python3-module-geventhttpclient
> python3-module-jsonlib
> python3-module-kerberos
> python3-module-ldap
> python3-module-m2crypto
> python3-module-pcap
> python3-module-py3k-bcrypt
> python3-module-pycairo
> python3-module-pyfltk
> python3-module-pygobject
> python3-module-sao
> python3-module-threadframe
> python3-module-twisted-core
> qscintilla2
> sfepy
> shiboken-py3
> totem
> weechat
> xraylib
> z3
>
> -- 
> Best regards,
> Ivan
>
>
>


Подробная информация о списке рассылки Devel