https://bugzilla.redhat.com/show_bug.cgi?id=1519346
Bug ID: 1519346 Summary: Review Request: python37 - Version 3.7 of the Python interpreter Product: Fedora Version: rawhide Component: Package Review Severity: medium Priority: medium Assignee: nobody@fedoraproject.org Reporter: mhroncok@redhat.com QA Contact: extras-qa@fedoraproject.org CC: package-review@lists.fedoraproject.org
Spec URL: https://src.fedoraproject.org/fork/churchyard/rpms/python3/raw/py37/f/python... SRPM URL: https://churchyard.fedorapeople.org/SRPMS/python37-3.7.0-0.1.a2.fc28.src.rpm
Description:
This package exists to allow developers to test their code against an newer version of Python. This is not a full Python stack and if you wish to run your applications with Python 3.7, update your Fedora to a newer version once Python 3.7 is stable.
Fedora Account System Username: churchyard
In git: https://src.fedoraproject.org/fork/churchyard/rpms/python3/tree/py37
Koji scratch build: https://koji.fedoraproject.org/koji/taskinfo?taskID=23473822
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
Zbigniew Jędrzejewski-Szmek zbyszek@in.waw.pl changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |POST CC| |zbyszek@in.waw.pl Assignee|nobody@fedoraproject.org |zbyszek@in.waw.pl Flags| |fedora-review+
--- Comment #1 from Zbigniew Jędrzejewski-Szmek zbyszek@in.waw.pl --- .so symlink is deleted. I understand why, but at the same time, this will make it harder to build C extensions for this version. And C extensions is something that people will want to test against the new version too. Not sure what to do about this.
%defattr(-,root,root,-) %defattr(-,root,root,755)
Not needed.
Since this is essentially a version update from an existing package, I'm only looking at the changes. Licensing and description and all unchanged stuff can be assumed to be OK.
+ package name is OK + version is OK (3.7.0-0.1.a2) + no conflicts: stdlib is in /usr/lib64/python3.7 include files are in /usr/include/python3.7m/ and everything else is suffixed with the version.
/usr/lib/rpm/macros.d/macros.pybytecompile3.7 will be included by rpm (all files in that directory are). But it's currently the same as the one provided by python3.6 and rpm has no issue with duplicated definitions, so this is not a problem.
+ Provides/Requires look OK + BuildRequires seem correct + installs and functions correctly
Package is APPROVED.
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
--- Comment #2 from Zbigniew Jędrzejewski-Szmek zbyszek@in.waw.pl --- I fired off a build in mock, and it failed with the following:
test_no_messages_in_queue_after_stop (test.test_logging.QueueListenerTest) ... --- Logging error --- Traceback (most recent call last): File "/builddir/build/BUILD/Python-3.7.0a2/Lib/smtplib.py", line 387, in getreply line = self.file.readline(_MAXLINE + 1) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/socket.py", line 586, in readinto return self._sock.recv_into(b) socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/builddir/build/BUILD/Python-3.7.0a2/Lib/logging/handlers.py", line 1007, in emit smtp = smtplib.SMTP(self.mailhost, port, timeout=self.timeout) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/smtplib.py", line 251, in __init__ (code, msg) = self.connect(host, port) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/smtplib.py", line 338, in connect (code, msg) = self.getreply() File "/builddir/build/BUILD/Python-3.7.0a2/Lib/smtplib.py", line 391, in getreply + str(e)) smtplib.SMTPServerDisconnected: Connection unexpectedly closed: timed out Call stack: File "/builddir/build/BUILD/Python-3.7.0a2/Lib/runpy.py", line 193, in _run_module_as_main "__main__", mod_spec) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/runpy.py", line 85, in _run_code exec(code, run_globals) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/regrtest.py", line 50, in <module> _main() File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/regrtest.py", line 46, in _main main() File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/libregrtest/main.py", line 585, in main Regrtest().main(tests=tests, **kwargs) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/libregrtest/main.py", line 510, in main self._main(tests, kwargs) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/libregrtest/main.py", line 540, in _main self.rerun_failed_tests() File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/libregrtest/main.py", line 291, in rerun_failed_tests ok = runtest(self.ns, test) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/libregrtest/runtest.py", line 140, in runtest result = runtest_inner(ns, test, display_failure=not ns.verbose) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/libregrtest/runtest.py", line 176, in runtest_inner test_runner() File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/support/__init__.py", line 1593, in inner return func(*args, **kwds) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/test_logging.py", line 4505, in test_main support.run_unittest(*tests) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/support/__init__.py", line 1936, in run_unittest _run_suite(suite) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/support/__init__.py", line 1892, in _run_suite result = runner.run(suite) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/unittest/runner.py", line 176, in run test(result) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/unittest/suite.py", line 84, in __call__ return self.run(*args, **kwds) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/unittest/suite.py", line 122, in run test(result) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/unittest/suite.py", line 84, in __call__ return self.run(*args, **kwds) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/unittest/suite.py", line 122, in run test(result) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/unittest/case.py", line 680, in __call__ return self.run(*args, **kwds) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/unittest/case.py", line 632, in run testMethod() File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/test_logging.py", line 995, in test_basic h.handle(r) Message: 'Hello ✓' Arguments: () test test_logging failed ok
====================================================================== FAIL: test_basic (test.test_logging.SMTPHandlerTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/test_logging.py", line 998, in test_basic self.assertTrue(self.handled.is_set()) AssertionError: False is not true
---------------------------------------------------------------------- Ran 172 tests in 33.013s
====================================================================== FAIL: test_prlimit (test.test_resource.ResourceTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/support/__init__.py", line 553, in wrapper return func(*args, **kw) File "/builddir/build/BUILD/Python-3.7.0a2/Lib/test/test_resource.py", line 153, in test_prlimit 1, resource.RLIMIT_AS) AssertionError: PermissionError not raised by prlimit
---------------------------------------------------------------------- Ran 11 tests in 0.097s
But it builds in koji, so maybe it's something specific here. Just giving you a heads-up.
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
--- Comment #3 from Miro Hrončok mhroncok@redhat.com --- Thanks. Will try to build C extension before I ship it.
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
--- Comment #4 from Miro Hrončok mhroncok@redhat.com --- The second error only happens in systemd-nspawn mocks.
https://bugs.python.org/issue31132
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
--- Comment #5 from Miro Hrončok mhroncok@redhat.com --- Building C extensions:
[py37t]$ python3.7 -m venv __venv37__ [py37t]$ . __venv37__/bin/activate (__venv37__) [py37t]$ pip install cython --install-option="--no-cython-compile" ... Successfully installed cython-0.27.3 (__venv37__) [py37t]$ python setup.py develop running develop running egg_info writing py37t.egg-info/PKG-INFO writing dependency_links to py37t.egg-info/dependency_links.txt writing top-level names to py37t.egg-info/top_level.txt reading manifest file 'py37t.egg-info/SOURCES.txt' writing manifest file 'py37t.egg-info/SOURCES.txt' running build_ext building 'py37t' extension gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -flto -fuse-linker-plugin -ffat-lto-objects -flto-partition=none -fPIC -I/home/churchyard/tmp/py37t/__venv37__/include -I/usr/include/python3.7m -c py37t.c -o build/temp.linux-x86_64-3.7/py37t.o creating build/lib.linux-x86_64-3.7 gcc -pthread -shared -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -g -flto -fuse-linker-plugin -ffat-lto-objects -flto-partition=none build/temp.linux-x86_64-3.7/py37t.o -L/usr/lib64 -lpython3.7m -o build/lib.linux-x86_64-3.7/py37t.cpython-37m-x86_64-linux-gnu.so copying build/lib.linux-x86_64-3.7/py37t.cpython-37m-x86_64-linux-gnu.so -> Creating /home/churchyard/tmp/py37t/__venv37__/lib/python3.7/site-packages/py37t.egg-link (link to .) Adding py37t 0.0.0 to easy-install.pth file
Installed /home/churchyard/tmp/py37t Processing dependencies for py37t==0.0.0 Finished processing dependencies for py37t==0.0.0 (__venv37__) [py37t]$ python Python 3.7.0a2 (default, Dec 1 2017, 08:47:44) [GCC 7.2.1 20170915 (Red Hat 7.2.1-2)] on linux Type "help", "copyright", "credits" or "license" for more information.
import py37t py37t.py37t()
37
(__venv37__) [py37t]$ cat setup.py from setuptools import setup from Cython.Build import cythonize
setup( name='py37t', ext_modules=cythonize('py37t.pyx', language_level=3), ) (__venv37__) [py37t]$ cat py37t.pyx cpdef int py37t(): return 37
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
--- Comment #7 from Gwyn Ciesla limburgher@gmail.com --- (fedrepo-req-admin): The Pagure repository was created at https://src.fedoraproject.org/rpms/python37. You may commit to the branch "f27" in about 10 minutes.
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
--- Comment #6 from Zbigniew Jędrzejewski-Szmek zbyszek@in.waw.pl --- Great. I guess that having /usr/lib64/libpython3.7m.so is enough.
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|POST |MODIFIED
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
--- Comment #8 from Fedora Update System updates@fedoraproject.org --- python37-3.7.0-0.1.a2.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2017-d3f5db86f9
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
--- Comment #9 from Fedora Update System updates@fedoraproject.org --- python37-3.7.0-0.1.a2.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-3bc4b69c2e
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|MODIFIED |ON_QA
--- Comment #10 from Fedora Update System updates@fedoraproject.org --- python37-3.7.0-0.1.a2.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-d3f5db86f9
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
--- Comment #11 from Fedora Update System updates@fedoraproject.org --- python37-3.7.0-0.1.a2.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-3bc4b69c2e
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
Fedora Update System updates@fedoraproject.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ON_QA |CLOSED Resolution|--- |ERRATA Last Closed| |2017-12-12 06:22:08
--- Comment #12 from Fedora Update System updates@fedoraproject.org --- python37-3.7.0-0.1.a2.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report.
https://bugzilla.redhat.com/show_bug.cgi?id=1519346
--- Comment #13 from Fedora Update System updates@fedoraproject.org --- python37-3.7.0-0.1.a2.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.
package-review@lists.fedoraproject.org