Bug 1695802 - python-daemon-2.2.3-1.fc31 FTBFS with Python 3.8: OSError: [Errno 88] Socket operation on non-socket
Summary: python-daemon-2.2.3-1.fc31 FTBFS with Python 3.8: OSError: [Errno 88] Socket ...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: python-daemon
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
urgent
Target Milestone: ---
Assignee: Fedora Infrastructure SIG
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PYTHON38
TreeView+ depends on / blocked
 
Reported: 2019-04-03 18:38 UTC by Miro Hrončok
Modified: 2019-06-30 00:02 UTC (History)
3 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2019-06-29 20:37:36 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Full log from Copr (230.43 KB, text/plain)
2019-04-03 18:38 UTC, Miro Hrončok
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Fedora Pagure python-daemon issue 34 0 None None None 2019-04-03 18:49:05 UTC
Fedora Pagure python-daemon pull-request 35 0 None None None 2019-04-03 19:00:14 UTC

Description Miro Hrončok 2019-04-03 18:38:35 UTC
Created attachment 1551503 [details]
Full log from Copr

When I build python-daemon 2.2.3-1.fc31 for Python 3.8, 73 tests error out:

  Ran 356 tests in 1.251s
  FAILED (errors=73, skipped=2)

The failures look like this:

  ======================================================================
  ERROR: test_specifies_username_to_initgroups (test.test_daemon.change_process_owner_TestCase)
  test.test_daemon.change_process_owner_TestCase.test_specifies_username_to_initgroups
  ----------------------------------------------------------------------
  testtools.testresult.real._StringException: Traceback (most recent call last):
    File "/builddir/build/BUILD/python3-python-daemon-2.2.3-1.fc31/test/test_daemon.py", line 1037, in setUp
      setup_daemon_context_fixtures(self)
    File "/builddir/build/BUILD/python3-python-daemon-2.2.3-1.fc31/test/test_daemon.py", line 110, in setup_daemon_context_fixtures
      testcase.test_instance = daemon.DaemonContext(
    File "/builddir/build/BUILD/python3-python-daemon-2.2.3-1.fc31/daemon/daemon.py", line 273, in __init__
      detach_process = is_detach_process_context_required()
    File "/builddir/build/BUILD/python3-python-daemon-2.2.3-1.fc31/daemon/daemon.py", line 821, in is_detach_process_context_required
      if is_process_started_by_init() or is_process_started_by_superserver():
    File "/builddir/build/BUILD/python3-python-daemon-2.2.3-1.fc31/daemon/daemon.py", line 798, in is_process_started_by_superserver
      if is_socket(stdin_fd):
    File "/builddir/build/BUILD/python3-python-daemon-2.2.3-1.fc31/daemon/daemon.py", line 764, in is_socket
      file_socket = socket.fromfd(fd, socket.AF_INET, socket.SOCK_RAW)
    File "/usr/lib64/python3.8/socket.py", line 464, in fromfd
      return socket(family, type, proto, nfd)
    File "/usr/lib64/python3.8/socket.py", line 151, in __init__
      _socket.socket.__init__(self, family, type, proto, fileno)
  OSError: [Errno 88] Socket operation on non-socket
  
  
  ----------------------------------------------------------------------

Full log attached.

This doesn't seem like a Copr issue, as Python 2.7 tests pass:

  Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.5KMVxt
  + umask 022
  + cd /builddir/build/BUILD
  + cd python-daemon-2.2.3
  ++ pwd
  + PYTHONPATH=/builddir/build/BUILD/python-daemon-2.2.3
  + /usr/bin/python2 -m unittest discover
  ...............................................................................................................................................................................................s....................s...............................................................................................................................................
  ----------------------------------------------------------------------
  Ran 356 tests in 1.820s
  
  OK (skipped=2)
  + pushd /builddir/build/BUILD/python3-python-daemon-2.2.3-1.fc31
  ~/build/BUILD/python3-python-daemon-2.2.3-1.fc31 ~/build/BUILD/python-daemon-2.2.3
  ++ pwd
  + PYTHONPATH=/builddir/build/BUILD/python3-python-daemon-2.2.3-1.fc31
  + /usr/bin/python3 -m unittest discover
  EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE.................EEEEEEEEEE...........................................................s.....................s........................................................................................................................................................................................


I've also rebuilt the package in side copr with Python 3.7 and it builds fine.

Comment 1 Miro Hrončok 2019-04-03 18:49:05 UTC
Reproduced and reported upstream: https://pagure.io/python-daemon/issue/34

Comment 2 Miro Hrončok 2019-04-03 19:00:15 UTC
The fix: https://pagure.io/python-daemon/pull-request/35

Comment 3 Miro Hrončok 2019-06-05 15:03:18 UTC
Shall I just commit and push the patch?

Comment 4 Kevin Fenzi 2019-06-29 20:37:36 UTC
Sorry I didn't see this for some reason. ;( 

Anyhow, it looks like upstream did a differnt fix than you, and I pulled that commit and built in rawhide. Please make sure it fixes the issue you were hitting with 3.8...

https://koji.fedoraproject.org/koji/taskinfo?taskID=35934251

Comment 5 Miro Hrončok 2019-06-30 00:02:56 UTC
Built fine.


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