[opensuse-factory] Python3 packaging inconsistencies/compiled files ignored
[Intentionally disabled line wrapping for the strace snippets] Hi, While debugging an ugly segfaulting issue last week, I noticed something strange in the traces when comparing local builds with system builds (the ones, that were produced from OBS): -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/__init__.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__init__.py", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/_version.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/_version.py", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/utilities.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/utilities.py", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/__init__.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3 +openat(AT_FDCWD, "/home/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/_version.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/utilities.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 [...] -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/__pycache__/__init__.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/__init__.py", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/version.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/__pycache__/__init__.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3 +openat(AT_FDCWD, "/home/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/version.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 [...] -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/document.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/document.py", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/document.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/destination.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/embedded_file.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/font.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/global_.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/page.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/page_transition.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/rectangle.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/cpp/toc.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/destination.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/destination.py", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/embeddedfile.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/embeddedfile.py", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/font.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/font.py", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/page.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/page.py", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/pagetransition.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/pagetransition.py", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/rectangle.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/rectangle.py", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/__pycache__/toc.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 -openat(AT_FDCWD, "/usr/lib64/python3.8/site-packages/poppler/toc.py", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/document.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/document.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/destination.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/embedded_file.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/font.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/global_.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/page.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/page_transition.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/rectangle.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/cpp/toc.cpython-38-x86_64-linux-gnu.so", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/destination.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/embeddedfile.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/font.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/page.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/pagetransition.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/rectangle.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 +openat(AT_FDCWD, "/home/nfs/hp/src/git/python-poppler/build/lib.linux-x86_64-3.8/poppler/__pycache__/toc.cpython-38.pyc", O_RDONLY|O_CLOEXEC) = 3 After opening the .pyc files, the interpreter always opens the .py files for the system package. For some reason, it doesn't accept the compiled files. The local package behave as expected. Needless to say, that this behavior is quite inefficient and not in the sense of the inventor. It would be even more efficient to to do without the compiled version and interpret every python file on load. Is that to be expected? Here's the package in question, but I fear, this is a generic issue: https://build.opensuse.org/package/show/home:frispete:python/python-python-p... I'm assuming, this is somewhat related to the attempts of reproducible builds. If somebody could confirm this issue independently, I will create a bug. Cheers, Pete TW 20201002 -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
participants (1)
-
Hans-Peter Jansen