Bug 1042882 - Potential issues caused by non-namespaced RPM provides and libraries
Summary: Potential issues caused by non-namespaced RPM provides and libraries
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Software Collections
Classification: Red Hat
Component: python
Version: python27
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: 2.0
Assignee: Python Maintainers
QA Contact: BaseOS QE - Apps
URL:
Whiteboard:
Depends On:
Blocks: 1042837
TreeView+ depends on / blocked
 
Reported: 2013-12-13 14:56 UTC by Honza Horak
Modified: 2015-01-09 08:02 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-01-09 08:02:48 UTC
Target Upstream Version:


Attachments (Terms of Use)

Description Honza Horak 2013-12-13 14:56:25 UTC
Collection python27 seems to provide unprefixed RPM providers, which can be also caused by shipping the same libraries as could be shipped outside of SCL environment. Refer to tracker bug #1042837 for more info why this can be problem and check/fix all suspicious provides, please.

General discussions about the issues and why unprefixed symbols/libraries are problem should take place in the tracker bug #1042837.

Components checked for collection python27:
python27
python27-babel
python27-build
python27-mod_wsgi
python27-MySQL-python
python27-numpy
python27-numpy-f2py
python27-python
python27-python-babel
python27-python-bson
python27-python-coverage
python27-python-debug
python27-python-devel
python27-python-docutils
python27-python-jinja2
python27-python-libs
python27-python-markupsafe
python27-python-nose
python27-python-nose-docs
python27-python-psycopg2
python27-python-psycopg2-doc
python27-python-pygments
python27-python-pymongo
python27-python-pymongo-gridfs
python27-python-setuptools
python27-python-simplejson
python27-python-six
python27-python-sphinx
python27-python-sphinx-doc
python27-python-sqlalchemy
python27-python-test
python27-python-tools
python27-python-virtualenv
python27-python-werkzeug
python27-python-werkzeug-doc
python27-runtime
python27-scipy
python27-suitesparse
python27-suitesparse-devel
python27-suitesparse-doc
python27-suitesparse-static
python27-tbb
python27-tbb-devel
python27-tbb-doc
python27-tkinter

Potential problems found in collection python27 by components:
-----------------------------------------------------------------
Suspicious provides for package python27-mod_wsgi
mod_wsgi.so()(64bit)

Suspicious provides for package python27-MySQL-python
_mysql.so()(64bit)

Suspicious provides for package python27-numpy
_capi.so()(64bit)
_compiled_base.so()(64bit)
_dotblas.so()(64bit)
_dummy.so()(64bit)
fftpack_lite.so()(64bit)
lapack_lite.so()(64bit)
mtrand.so()(64bit)
multiarray.so()(64bit)
multiarray_tests.so()(64bit)
scalarmath.so()(64bit)
umath.so()(64bit)
umath_tests.so()(64bit)

Suspicious provides for package python27-python-debug
_bisectmodule_d.so()(64bit)
_bsddb_d.so()(64bit)
_codecs_cn_d.so()(64bit)
_codecs_hk_d.so()(64bit)
_codecs_iso2022_d.so()(64bit)
_codecs_jp_d.so()(64bit)
_codecs_kr_d.so()(64bit)
_codecs_tw_d.so()(64bit)
_collectionsmodule_d.so()(64bit)
_cryptmodule_d.so()(64bit)
_csv_d.so()(64bit)
_ctypes_d.so()(64bit)
_ctypes_test_d.so()(64bit)
_curses_d.so()(64bit)
_curses_panel_d.so()(64bit)
_elementtree_d.so()(64bit)
_functoolsmodule_d.so()(64bit)
_hashlib_d.so()(64bit)
_heapq_d.so()(64bit)
_hotshot_d.so()(64bit)
_io_d.so()(64bit)
_json_d.so()(64bit)
_localemodule_d.so()(64bit)
_lsprof_d.so()(64bit)
_multibytecodecmodule_d.so()(64bit)
_multiprocessing_d.so()(64bit)
_randommodule_d.so()(64bit)
_socketmodule_d.so()(64bit)
_sqlite3_d.so()(64bit)
_ssl_d.so()(64bit)
_struct_d.so()(64bit)
_testcapimodule_d.so()(64bit)
_tkinter_d.so()(64bit)
arraymodule_d.so()(64bit)
audioop_d.so()(64bit)
binascii_d.so()(64bit)
bz2_d.so()(64bit)
cPickle_d.so()(64bit)
cStringIO_d.so()(64bit)
cmathmodule_d.so()(64bit)
datetime_d.so()(64bit)
dbm_d.so()(64bit)
dlmodule_d.so()(64bit)
fcntlmodule_d.so()(64bit)
future_builtins_d.so()(64bit)
gdbmmodule_d.so()(64bit)
grpmodule_d.so()(64bit)
imageop_d.so()(64bit)
itertoolsmodule_d.so()(64bit)
libpython2.7_d.so.1.0()(64bit)
linuxaudiodev_d.so()(64bit)
math_d.so()(64bit)
mmapmodule_d.so()(64bit)
nismodule_d.so()(64bit)
operator_d.so()(64bit)
ossaudiodev_d.so()(64bit)
parsermodule_d.so()(64bit)
pyexpat_d.so()(64bit)
readline_d.so()(64bit)
resource_d.so()(64bit)
selectmodule_d.so()(64bit)
spwdmodule_d.so()(64bit)
stropmodule_d.so()(64bit)
syslog_d.so()(64bit)
termios_d.so()(64bit)
timemodule_d.so()(64bit)
timingmodule_d.so()(64bit)
unicodedata_d.so()(64bit)
xxsubtype_d.so()(64bit)
zlibmodule_d.so()(64bit)

Suspicious provides for package python27-python-libs
_bisectmodule.so()(64bit)
_bsddb.so()(64bit)
_codecs_cn.so()(64bit)
_codecs_hk.so()(64bit)
_codecs_iso2022.so()(64bit)
_codecs_jp.so()(64bit)
_codecs_kr.so()(64bit)
_codecs_tw.so()(64bit)
_collectionsmodule.so()(64bit)
_cryptmodule.so()(64bit)
_csv.so()(64bit)
_ctypes.so()(64bit)
_curses.so()(64bit)
_curses_panel.so()(64bit)
_elementtree.so()(64bit)
_functoolsmodule.so()(64bit)
_hashlib.so()(64bit)
_heapq.so()(64bit)
_hotshot.so()(64bit)
_io.so()(64bit)
_json.so()(64bit)
_localemodule.so()(64bit)
_lsprof.so()(64bit)
_multibytecodecmodule.so()(64bit)
_multiprocessing.so()(64bit)
_randommodule.so()(64bit)
_socketmodule.so()(64bit)
_sqlite3.so()(64bit)
_ssl.so()(64bit)
_struct.so()(64bit)
arraymodule.so()(64bit)
audioop.so()(64bit)
binascii.so()(64bit)
bz2.so()(64bit)
cPickle.so()(64bit)
cStringIO.so()(64bit)
cmathmodule.so()(64bit)
datetime.so()(64bit)
dbm.so()(64bit)
dlmodule.so()(64bit)
fcntlmodule.so()(64bit)
future_builtins.so()(64bit)
gdbmmodule.so()(64bit)
grpmodule.so()(64bit)
imageop.so()(64bit)
itertoolsmodule.so()(64bit)
libpython2.7.so.1.0()(64bit)
linuxaudiodev.so()(64bit)
math.so()(64bit)
mmapmodule.so()(64bit)
nismodule.so()(64bit)
operator.so()(64bit)
ossaudiodev.so()(64bit)
parsermodule.so()(64bit)
pyexpat.so()(64bit)
readline.so()(64bit)
resource.so()(64bit)
selectmodule.so()(64bit)
spwdmodule.so()(64bit)
stropmodule.so()(64bit)
syslog.so()(64bit)
termios.so()(64bit)
timemodule.so()(64bit)
timingmodule.so()(64bit)
unicodedata.so()(64bit)
xxsubtype.so()(64bit)
zlibmodule.so()(64bit)

Suspicious provides for package python27-python-markupsafe
_speedups.so()(64bit)

Suspicious provides for package python27-python-psycopg2
_psycopg.so()(64bit)

Suspicious provides for package python27-python-simplejson
_speedups.so()(64bit)

Suspicious provides for package python27-python-sqlalchemy
cprocessors.so()(64bit)
cresultproxy.so()(64bit)

Suspicious provides for package python27-python-test
_ctypes_test.so()(64bit)
_testcapimodule.so()(64bit)

Suspicious provides for package python27-scipy
__odrpack.so()(64bit)
__umfpack.so()(64bit)
_arpack.so()(64bit)
_bsr.so()(64bit)
_cblas.so()(64bit)
_clapack.so()(64bit)
_cobyla.so()(64bit)
_coo.so()(64bit)
_csc.so()(64bit)
_csgraph.so()(64bit)
_csr.so()(64bit)
_dia.so()(64bit)
_distance_wrap.so()(64bit)
_dop.so()(64bit)
_fblas.so()(64bit)
_fftpack.so()(64bit)
_fitpack.so()(64bit)
_flapack.so()(64bit)
_flinalg.so()(64bit)
_hierarchy_wrap.so()(64bit)
_interpolate.so()(64bit)
_iterative.so()(64bit)
_lbfgsb.so()(64bit)
_min_spanning_tree.so()(64bit)
_minpack.so()(64bit)
_nd_image.so()(64bit)
_nnls.so()(64bit)
_odepack.so()(64bit)
_quadpack.so()(64bit)
_rank.so()(64bit)
_shortest_path.so()(64bit)
_slsqp.so()(64bit)
_spectral.so()(64bit)
_superlu.so()(64bit)
_tools.so()(64bit)
_traversal.so()(64bit)
_ufuncs.so()(64bit)
_ufuncs_cxx.so()(64bit)
_vq.so()(64bit)
_zeros.so()(64bit)
calc_lwork.so()(64bit)
cblas.so()(64bit)
ckdtree.so()(64bit)
clapack.so()(64bit)
convolve.so()(64bit)
dfitpack.so()(64bit)
fblas.so()(64bit)
flapack.so()(64bit)
futil.so()(64bit)
interpnd.so()(64bit)
lsoda.so()(64bit)
minpack2.so()(64bit)
mio5_utils.so()(64bit)
mio_utils.so()(64bit)
moduleTNC.so()(64bit)
mvn.so()(64bit)
qhull.so()(64bit)
sigtools.so()(64bit)
specfun.so()(64bit)
spline.so()(64bit)
statlib.so()(64bit)
streams.so()(64bit)
vode.so()(64bit)
vonmises_cython.so()(64bit)

Suspicious provides for package python27-suitesparse
libamd.so.2()(64bit)
libbtf.so.1()(64bit)
libcamd.so.2()(64bit)
libccolamd.so.2()(64bit)
libcholmod.so.2()(64bit)
libcolamd.so.2()(64bit)
libcxsparse.so.3()(64bit)
libklu.so.1()(64bit)
libldl.so.2()(64bit)
librbio.so.2()(64bit)
libspqr.so.1()(64bit)
libsuitesparseconfig.so.4()(64bit)
libumfpack.so.5()(64bit)

Suspicious provides for package python27-tbb
libtbb.so.2()(64bit)
libtbbmalloc.so.2()(64bit)
libtbbmalloc_proxy.so.2()(64bit)

Suspicious provides for package python27-tbb-devel
pkgconfig(tbb) = 4.1.3
pkgconfig(tbbmalloc) = 4.1.3
pkgconfig(tbbmalloc_proxy) = 4.1.3

Suspicious provides for package python27-tkinter
_tkinter.so()(64bit)

Comment 2 Marcela Mašláňová 2013-12-18 11:18:15 UTC
Please, apply for libraries like libperl.so, libruby.so, libv8.so prefix, as documented in http://docs.fedoraproject.org/en-US/Fedora_Contributor_Documentation/1/html/Software_Collections_Guide/sect-Prefixing_the_Library_Major_soname_with_the_Collection_Name.html.

Comment 3 Bohuslav "Slavek" Kabrda 2013-12-18 14:37:26 UTC
Ok, so out of these, there are some provides that might theoretically be problematic:

Suspicious provides for package python27-python-debug
libpython2.7_d.so.1.0()(64bit)

Suspicious provides for package python27-python-libs
libpython2.7.so.1.0()(64bit)

Suspicious provides for package python27-suitesparse
libamd.so.2()(64bit)
libbtf.so.1()(64bit)
libcamd.so.2()(64bit)
libccolamd.so.2()(64bit)
libcholmod.so.2()(64bit)
libcolamd.so.2()(64bit)
libcxsparse.so.3()(64bit)
libklu.so.1()(64bit)
libldl.so.2()(64bit)
librbio.so.2()(64bit)
libspqr.so.1()(64bit)
libsuitesparseconfig.so.4()(64bit)
libumfpack.so.5()(64bit)

Suspicious provides for package python27-tbb
libtbb.so.2()(64bit)
libtbbmalloc.so.2()(64bit)
libtbbmalloc_proxy.so.2()(64bit)

Suspicious provides for package python27-tbb-devel
pkgconfig(tbb) = 4.1.3
pkgconfig(tbbmalloc) = 4.1.3
pkgconfig(tbbmalloc_proxy) = 4.1.3


So this will require patching python27-python, python27-suitesparse and python27-tbb (only the first one applies to RHEL 7).
Because of changing the libpython.so provide, all of python binary extension packages will need to be rebuilt (all of these apply to RHEL 7, too). That means 12 packages:
python27-MySQL-python
python27-mod_wsgi
python27-numpy
python27-python
python27-python-coverage
python27-python-libs
python27-python-markupsafe
python27-python-psycopg2
python27-python-pymongo
python27-python-simplejson
python27-python-sqlalchemy
python27-scipy

Comment 5 Bohuslav "Slavek" Kabrda 2015-01-09 08:02:48 UTC
This won't get fixed in python27, since it has a potential of breaking customer builds depending on the SCL. Since none of these potential problems caused any real world issues, we will only tackle this in newly introduced SCLs.


Note You need to log in before you can comment on or make changes to this bug.