============================ rpmlint session starts ============================ rpmlint: 2.8.0 configuration: /opt/testing/lib64/python3.13/rpmlint/configdefaults.toml /opt/testing/share/rpmlint/cron-whitelist.toml /opt/testing/share/rpmlint/dbus-services.toml /opt/testing/share/rpmlint/device-files-whitelist.toml /opt/testing/share/rpmlint/licenses.toml /opt/testing/share/rpmlint/opensuse.toml /opt/testing/share/rpmlint/pam-modules.toml /opt/testing/share/rpmlint/permissions-whitelist.toml /opt/testing/share/rpmlint/pie-executables.toml /opt/testing/share/rpmlint/polkit-rules-whitelist.toml /opt/testing/share/rpmlint/scoring.toml /opt/testing/share/rpmlint/security.toml /opt/testing/share/rpmlint/sudoers-whitelist.toml /opt/testing/share/rpmlint/sysctl-whitelist.toml /opt/testing/share/rpmlint/systemd-tmpfiles.toml /opt/testing/share/rpmlint/users-groups.toml /opt/testing/share/rpmlint/world-writable-whitelist.toml /opt/testing/share/rpmlint/zypper-plugins.toml /etc/xdg/rpmlint/scoring-strict.override.toml rpmlintrc: /home/abuild/rpmbuild/SOURCES/python312-rpmlintrc checks: 42, packages: 11 python312-testsuite.x86_64: E: zero-length /usr/lib64/python3.12/test/certdata/nullcert.pem python312-testsuite.x86_64: E: zero-length /usr/lib64/python3.12/test/regrtestdata/import_from_tests/test_regrtest_b/util.py python312-testsuite.x86_64: E: zero-length /usr/lib64/python3.12/test/test_import/data/package/submodule.py python312-testsuite.x86_64: E: zero-length /usr/lib64/python3.12/test/test_import/data/package2/submodule2.py python312-testsuite.x86_64: E: zero-length /usr/lib64/python3.12/test/test_import/data/unwritable/x.py python312-testsuite.x86_64: E: zero-length /usr/lib64/python3.12/test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test/empty python312-testsuite.x86_64: E: zero-length /usr/lib64/python3.12/test/test_importlib/resources/data03/namespace/resource1.txt python312-testsuite.x86_64_v3: E: zero-length /usr/lib64/python3.12/test/certdata/nullcert.pem python312-testsuite.x86_64_v3: E: zero-length /usr/lib64/python3.12/test/regrtestdata/import_from_tests/test_regrtest_b/util.py python312-testsuite.x86_64_v3: E: zero-length /usr/lib64/python3.12/test/test_import/data/package/submodule.py python312-testsuite.x86_64_v3: E: zero-length /usr/lib64/python3.12/test/test_import/data/package2/submodule2.py python312-testsuite.x86_64_v3: E: zero-length /usr/lib64/python3.12/test/test_import/data/unwritable/x.py python312-testsuite.x86_64_v3: E: zero-length /usr/lib64/python3.12/test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test/empty python312-testsuite.x86_64_v3: E: zero-length /usr/lib64/python3.12/test/test_importlib/resources/data03/namespace/resource1.txt python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/bundle/bootstrap/pythonba.sln python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/bundle/bootstrap/pythonba.vcxproj python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/make_appx.ps1 python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/make_cat.ps1 python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/make_zip.proj python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/msi.props python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/sign_build.ps1 python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/uploadrelease.proj python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/uploadrelease.ps1 python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/wix.props python312-tools.x86_64: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/nuget/make_pkg.proj python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/bundle/bootstrap/pythonba.sln python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/bundle/bootstrap/pythonba.vcxproj python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/make_appx.ps1 python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/make_cat.ps1 python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/make_zip.proj python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/msi.props python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/sign_build.ps1 python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/uploadrelease.proj python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/uploadrelease.ps1 python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/msi/wix.props python312-tools.x86_64_v3: W: wrong-file-end-of-line-encoding /usr/share/doc/packages/python312-core/Tools/nuget/make_pkg.proj This file has wrong end-of-line encoding, usually caused by creation or modification on a non-Unix system. It could prevent it from being displayed correctly in some circumstances. python312-tools.x86_64: E: version-control-internal-file /usr/share/doc/packages/python312-core/Tools/peg_generator/.gitignore python312-tools.x86_64_v3: E: version-control-internal-file /usr/share/doc/packages/python312-core/Tools/peg_generator/.gitignore You have included file(s) internally used by a version control system in the package. Move these files out of the package and rebuild it. python312-core.src: E: unused-rpmlintrc-filter "pem-certificate.*/usr/lib.*/python.*/test/*.pem" python312-core.src: E: unused-rpmlintrc-filter "devel-file-in-non-devel-package.*/usr/lib.*/python.*/tests/*.c" python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/base64.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/cProfile.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/cgi.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/encodings/rot_13.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/lib2to3/pgen2/token.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/pdb.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/platform.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/profile.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/pydoc.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/quopri.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/smtplib.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/tabnanny.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/tarfile.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/timeit.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/trace.py python312-base.x86_64: E: script-without-shebang /usr/lib64/python3.12/webbrowser.py python312-devel.x86_64: E: script-without-shebang /usr/share/gdb/auto-load/usr/lib64/libpython3.12.so.1.0-gdb.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/bisect_cmd.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/crashers/recursive_call.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/curses_tests.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/re_tests.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/regrtest.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/support/smtpd.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/test_array.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/test_importlib/resources/update-zips.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/test_lib2to3/data/different_encoding.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/test_lib2to3/data/false_encoding.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/test_lib2to3/pytree_idempotency.py python312-testsuite.x86_64: E: script-without-shebang /usr/lib64/python3.12/test/test_uuid.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/__main__.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/bytedesign.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/clock.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/forest.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/fractalcurves.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/lindenmayer.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/minimal_hanoi.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/paint.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/peace.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/penrose.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/planet_and_moon.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/sorting_animate.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/tree.py python312-tools.x86_64: E: script-without-shebang /usr/lib64/python3.12/turtledemo/yinyang.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/base64.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/cProfile.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/cgi.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/encodings/rot_13.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/lib2to3/pgen2/token.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/pdb.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/platform.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/profile.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/pydoc.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/quopri.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/smtplib.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/tabnanny.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/tarfile.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/timeit.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/trace.py python312-base.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/webbrowser.py python312-devel.x86_64_v3: E: script-without-shebang /usr/share/gdb/auto-load/usr/lib64/libpython3.12.so.1.0-gdb.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/bisect_cmd.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/crashers/recursive_call.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/curses_tests.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/re_tests.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/regrtest.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/support/smtpd.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/test_array.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/test_importlib/resources/update-zips.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/test_lib2to3/data/different_encoding.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/test_lib2to3/data/false_encoding.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/test_lib2to3/pytree_idempotency.py python312-testsuite.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/test/test_uuid.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/__main__.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/bytedesign.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/clock.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/forest.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/fractalcurves.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/lindenmayer.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/minimal_hanoi.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/paint.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/peace.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/penrose.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/planet_and_moon.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/sorting_animate.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/tree.py python312-tools.x86_64_v3: E: script-without-shebang /usr/lib64/python3.12/turtledemo/yinyang.py This text file has executable bits set or is located in a path dedicated for executables, but lacks a shebang and cannot thus be executed. If the file is meant to be an executable script, add the shebang, otherwise remove the executable bits or move the file elsewhere. python312-devel.x86_64: W: potential-bashisms /usr/lib64/python3.12/config-3.12-x86_64-linux-gnu/install-sh python312-devel.x86_64_v3: W: potential-bashisms /usr/lib64/python3.12/config-3.12-x86_64-linux-gnu/install-sh checkbashisms reported potential bashisms in a /bin/sh shell script, you might want to manually check this script for bashisms. python312-tools.x86_64: W: package-with-huge-docs 90% python312-tools.x86_64_v3: W: package-with-huge-docs 90% More than half the size of your package is documentation. Consider splitting it into a -doc subpackage. python312-base.x86_64: W: obsolete-not-provided python3 python312-base.x86_64_v3: W: obsolete-not-provided python3 If a package is obsoleted by a compatible replacement, the obsoleted package should also be provided in order to not cause unnecessary dependency breakage. If the obsoleting package is not a compatible replacement for the old one, leave out the Provides. python312.spec:770: W: macro-in-comment %{sitedir} python312.spec:770: W: macro-in-comment %{python_abi} There is a unescaped macro after a shell style comment in the specfile. Macros are expanded everywhere, so check if it can cause a problem in this case and escape the macro with another leading % if appropriate. python312-core.src: E: invalid-spec-name The spec file name (without the .spec suffix) must match the package name ('Name:' tag). python312-tools.x86_64: W: hidden-file-or-dir /usr/share/doc/packages/python312-core/Tools/clinic/.ruff.toml python312-tools.x86_64: W: hidden-file-or-dir /usr/share/doc/packages/python312-core/Tools/peg_generator/.clang-format python312-tools.x86_64: W: hidden-file-or-dir /usr/share/doc/packages/python312-core/Tools/peg_generator/.gitignore python312-tools.x86_64: W: hidden-file-or-dir /usr/share/doc/packages/python312-core/Tools/wasm/.editorconfig python312-tools.x86_64_v3: W: hidden-file-or-dir /usr/share/doc/packages/python312-core/Tools/clinic/.ruff.toml python312-tools.x86_64_v3: W: hidden-file-or-dir /usr/share/doc/packages/python312-core/Tools/peg_generator/.clang-format python312-tools.x86_64_v3: W: hidden-file-or-dir /usr/share/doc/packages/python312-core/Tools/peg_generator/.gitignore python312-tools.x86_64_v3: W: hidden-file-or-dir /usr/share/doc/packages/python312-core/Tools/wasm/.editorconfig The file or directory is hidden. You should see if this is normal, and delete it from the package if not. python312-base.x86_64: W: files-duplicate /usr/lib64/python3.12/_import_failed/__pycache__/turtledemo.cpython-312.pyc /usr/lib64/python3.12/_import_failed/__pycache__/_ctypes_test.cpython-312.opt-1.pyc:/usr/lib64/python3.12/_import_failed/__pycache__/_ctypes_test.cpython-312.pyc:/usr/lib64/python3.12/_import_failed/__pycache__/_curses.cpython-312.opt-1.pyc:/usr/lib64/python3.12/_import_failed/__pycache__/_curses.cpython-312.pyc:/usr/lib64/python3.12/_import_failed/__pycache__/_dbm.cpython-312.opt-1.pyc:(and 42 more) python312-base.x86_64_v3: W: files-duplicate /usr/lib64/python3.12/_import_failed/__pycache__/turtledemo.cpython-312.pyc /usr/lib64/python3.12/_import_failed/__pycache__/_ctypes_test.cpython-312.opt-1.pyc:/usr/lib64/python3.12/_import_failed/__pycache__/_ctypes_test.cpython-312.pyc:/usr/lib64/python3.12/_import_failed/__pycache__/_curses.cpython-312.opt-1.pyc:/usr/lib64/python3.12/_import_failed/__pycache__/_curses.cpython-312.pyc:/usr/lib64/python3.12/_import_failed/__pycache__/_dbm.cpython-312.opt-1.pyc:(and 42 more) Your package contains duplicated files that are not hard- or symlinks. You should use the %fdupes macro to link the files to one. python312-testsuite.x86_64: W: file-not-in-%lang /usr/lib64/python3.12/test/test_tools/msgfmt_data/fuzzy.mo python312-testsuite.x86_64: W: file-not-in-%lang /usr/lib64/python3.12/test/test_tools/msgfmt_data/general.mo python312-testsuite.x86_64_v3: W: file-not-in-%lang /usr/lib64/python3.12/test/test_tools/msgfmt_data/fuzzy.mo python312-testsuite.x86_64_v3: W: file-not-in-%lang /usr/lib64/python3.12/test/test_tools/msgfmt_data/general.mo python312-testsuite.x86_64: E: devel-file-in-non-devel-package (Badness: 50) /usr/lib64/python3.12/test/clinic.test.c python312-testsuite.x86_64: E: devel-file-in-non-devel-package (Badness: 50) /usr/lib64/python3.12/test/test_cext/extension.c python312-testsuite.x86_64_v3: E: devel-file-in-non-devel-package (Badness: 50) /usr/lib64/python3.12/test/clinic.test.c python312-testsuite.x86_64_v3: E: devel-file-in-non-devel-package (Badness: 50) /usr/lib64/python3.12/test/test_cext/extension.c A file that is needed only e.g. when developing or building software is included in a non-devel package. These files should go in devel packages. python312-base.x86_64: W: binary-or-shlib-calls-gethostbyname /usr/lib64/python3.12/lib-dynload/_socket.cpython-312-x86_64-linux-gnu.so python312-base.x86_64_v3: W: binary-or-shlib-calls-gethostbyname /usr/lib64/python3.12/lib-dynload/_socket.cpython-312-x86_64-linux-gnu.so The binary calls gethostbyname. Please port the code to use getaddrinfo. Check time report (>1% & >0.1s): Check Duration (in s) Fraction (in %) Checked files ExtractRpm 13.8 64.1 FilesCheck 2.0 9.3 BashismsCheck 2.0 9.3 BinariesCheck 1.6 7.3 BuildRootAndDateCheck 0.8 3.8 SignatureCheck 0.4 1.6 FilelistCheck 0.3 1.4 TOTAL 21.6 100.0 11 packages and 0 specfiles checked; 109 errors, 46 warnings, 304 filtered, 305 badness; has taken 22.0 s