Code Monkey home page Code Monkey logo

Comments (23)

harvimt avatar harvimt commented on June 23, 2024

something weird is happening according to that traceback, I'll need more context.

The default logger handler just sends the data to stderr, but it looks like you have a logger set to log to a file, and then somehow that's triggering an error inside the logging module ("NameError: name 'open' is not defined).

It's... super bizarre.

So things to isolate:

  1. Are you using the newest version of python 3.4?
  2. If you set the log to go to stderr instead of to a file do you still get the error?
  3. Does it trigger if you turn off logging, but leave debug mode on? (logging.basicConfig(level=logging.CRITICAL), loop.set_debug(True))
  4. Does it trigger on other versions of python? (3.3. I haven't tested quamash at all on 3.5)

from quamash.

horazont avatar horazont commented on June 23, 2024

Just shooting into the dark here, is it possible that the logger is only triggered that far in the shutdown phase that some builtins are not available anymore already? I don’t know whether the logging module opens the file for each message or opens it once for all. In the latter case, the theory should be dismissable by emitting a log at the start of the application.

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

I'm using latest python (3.4) on archlinux.

If I disable logging to a file, here are the logs that seems to create the crash :

DEBUG:__init__:Qt event loop ended with result 0
DEBUG:__init__:Already stopped
DEBUG:__init__:Closing event loop...
DEBUG:__init__:Removing reader callback for file descriptor 11
DEBUG:_unix:Closing
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<discover_network() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/network.py:203> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future pending cb=[Task._wakeup()]>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future pending cb=[Task._wakeup()]>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future pending cb=[Task._wakeup()]>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future pending cb=[Task._wakeup()]>>
DEBUG:__init__:Default exception handler executing
ERROR:__init__:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future pending cb=[Task._wakeup()]>>

Process finished with exit code 0

from quamash.

harvimt avatar harvimt commented on June 23, 2024

That... doesn't look like a crash though, so if you don't log to a file it
doesn't crash?

(see "process finished with exit code 0")

On Fri, Jul 24, 2015 at 9:04 AM, Insoleet [email protected] wrote:

I'm using latest python (3.4) on archlinux.

If I disable logging to a file, here are the logs that seems to create the
crash :

DEBUG:init:Qt event loop ended with result 0
DEBUG:init:Already stopped
DEBUG:init:Closing event loop...
DEBUG:init:Removing reader callback for file descriptor 11
DEBUG:_unix:Closing
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<discover_network() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/network.py:203> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>
DEBUG:init:Default exception handler executing
ERROR:init:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/init.py:17> wait_for=>

Process finished with exit code 0


Reply to this email directly or view it on GitHub
#37 (comment).

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

Yes, exactly.

ERROR:__init__:Task was destroyed but it is pending!" 

never logs if I enable logging to a file. Instead, I get a crash. It seems that these logs are the cause of the crash when I enable logging to a file.
Also, I forgot to mention it, but when I run our app in debug mode, pydev debugger is running and monitoring the app.

from quamash.

horazont avatar horazont commented on June 23, 2024

@Insoleet Can you try logging an error during application start up? Does this make the crash go away?

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

Sure I can try it !

Where should I put it in the following lines ?

if __name__ == '__main__':
    # activate ctrl-c interrupt
    signal.signal(signal.SIGINT, signal.SIG_DFL)

    cutecoin = QApplication(sys.argv)
    loop = QEventLoop(cutecoin)
    asyncio.set_event_loop(loop)

    with loop:
        app = Application.startup(sys.argv, cutecoin, loop)
        window = MainWindow(app)
        window.startup()
        loop.run_forever()
    sys.exit()

And to be clear on one point that I think I was not clear enough :

  • When I talk about debug mode, it's running the app with pydev debugger
  • When I run the app without pydev debugger but still with debug logging enabled, I don't get a crash.

from quamash.

horazont avatar horazont commented on June 23, 2024

@Insoleet Before the with loop: would probably be fine.

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

Ok the behaviour is really weird with logging in these lines.

If I add logging.debug("smth") before the with loop, I don't have any application log going out. The app doesn't crash anymore and here are the only logs that I can get.

Connected to pydev debugger (build 141.1899)
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}
ERROR:quamash.QEventLoop:Task was destroyed but it is pending!
task: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>
('Task was destroyed but it is pending!\ntask: <Task pending coro=<timeout() running at /home/inso/code/ucoin/cutecoin/src/cutecoin/core/net/api/bma/__init__.py:17> wait_for=<Future finished result=None>>',), {'exc_info': False}

Process finished with exit code 0

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

Could this be linked to this bug : #34 ?

from quamash.

harvimt avatar harvimt commented on June 23, 2024

Are you talking about the "Task was destroyed but it is pending!" errors? those could be related, but the crash is a bug in the python logging module, or expected behaviour depending on how you look at it.

Looks like you can work around the logging by sending data through the logger to make sure it gets initialized, then if it encounters any error messages during shutdown, it can handle them.

Also #34 is just generally out of my league in terms of debugging it, it's kind of a heisenbug though since it involves the garbage collector.

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

The problem is that if I initialize the logger before the with loop by sending data to it... I don't have any application log going out. Only the ones emitted by quamash after the loop !

from quamash.

harvimt avatar harvimt commented on June 23, 2024

That sounds like a bad logging configuration, are you just using logging.basicConfig or something more complicated?

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

Here is my code to initialize logging :

    if options.debug:
        logging.basicConfig(format='%(levelname)s:%(module)s:%(message)s',
            level=logging.DEBUG)
    elif options.verbose:
        logging.basicConfig(format='%(levelname)s:%(message)s',
            level=logging.INFO)
    else:
        logging.getLogger().propagate = False

from quamash.

harvimt avatar harvimt commented on June 23, 2024

And this is all running with options.debug right? 😦 😢 😭 💩 👎

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

Yes !

def parse_arguments(argv):
    parser = OptionParser()

    parser.add_option("-v", "--verbose",
                      action="store_true", dest="verbose", default=False,
                      help="Print INFO messages to stdout")

    parser.add_option("-d", "--debug",
                      action="store_true", dest="debug", default=False,
                      help="Print DEBUG messages to stdout")

    (options, args) = parser.parse_args(argv)

from quamash.

harvimt avatar harvimt commented on June 23, 2024

I guess you need to start stepping through with a debugger to figure out what's eating the logging messages when logging is initialized vs not. I wish I had more info to narrow down some the search space some, but I do not.

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

To sum it up :

  • This bug occurs with pydev debugger
  • The application "freezes" for seconds before closing
  • It causes a crash when using a logfile, but don't crash without logfile
  • If I enable the logfile, it is created and filled before the app is closed
  • If I add logging before the with loop:, the log is never printed out but I get quamash logs after the loop closes. My application logs are not printed out.

I'll try to get more info. To be continued...

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

The logging is not printed because I didn't run logging.basicConfig before doing logging.debug.

After initializing logging and the FileHandler before with loop: and before doing the first logging outside of the with loop, I still get a crash. So, the problem is not with the file being opened inside the with loop.

Here is something interesting. If I add a breakpoint in the default_exception_handler of quamash method, I don't get a crash anymore. I don't even have the errors ERROR:quamash.QEventLoop:Task was destroyed but it is pending! ! There is definitely something going on with the debugger.

EDIT : In fact, it does not crash but the processes never close. The last logs :

DEBUG:quamash.QEventLoop:Adding callback <Handle Task._wakeup(<Future finished result=None>)> with delay 0
DEBUG:quamash.QEventLoop:Qt event loop ended with result 0
DEBUG:quamash.QEventLoop:Already stopped
DEBUG:quamash.QEventLoop:Closing event loop...
DEBUG:quamash.QEventLoop:Removing reader callback for file descriptor 11
DEBUG:quamash._unix._Selector:Closing

from quamash.

harvimt avatar harvimt commented on June 23, 2024

That lends more credence to the relation to #34 theory, but I need help from someone who really understands python's garbage collector to fix that one.

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

Do you know anyone which could be of some help ? Maybe you should ask on the python mailing list ?

from quamash.

harvimt avatar harvimt commented on June 23, 2024

I went ahead and asked here: https://groups.google.com/d/topic/python-tulip/7S4RX_XVOr4/discussion

from quamash.

Insoleet avatar Insoleet commented on June 23, 2024

This one is fixed.

from quamash.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.