jookies / jasmin

Jasmin - Open source SMS gateway
http://jasminsms.com
Other
1.01k stars 550 forks source link

Python >=3.11 - module 'inspect' has no attribute 'getargspec' #1085

Closed farirat closed 1 year ago

farirat commented 1 year ago

Jasmin's cli crashes when defining a default mt route with the following error:

jasmin               | Unhandled Error
jasmin               | Traceback (most recent call last):
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/python/log.py", line 96, in callWithLogger
jasmin               |     return callWithContext({"system": lp}, func, *args, **kw)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/python/log.py", line 80, in callWithContext
jasmin               |     return context.call({ILogContext: newCtx}, func, *args, **kw)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/python/context.py", line 117, in callWithContext
jasmin               |     return self.currentContext().callWithContext(ctx, func, *args, **kw)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/python/context.py", line 82, in callWithContext
jasmin               |     return func(*args, **kw)
jasmin               | --- <exception caught here> ---
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/internet/posixbase.py", line 683, in _doReadOrWrite
jasmin               |     why = selectable.doRead()
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/internet/tcp.py", line 248, in doRead
jasmin               |     return self._dataReceived(data)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/internet/tcp.py", line 253, in _dataReceived
jasmin               |     rval = self.protocol.dataReceived(data)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/conch/telnet.py", line 599, in dataReceived
jasmin               |     self.applicationDataReceived(b"".join(appDataBuffer))
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/conch/telnet.py", line 941, in applicationDataReceived
jasmin               |     self.protocol.dataReceived(data)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/conch/telnet.py", line 987, in dataReceived
jasmin               |     self.protocol.dataReceived(data)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/conch/insults/insults.py", line 520, in dataReceived
jasmin               |     self.terminalProtocol.keystrokeReceived(ch, None)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/conch/recvline.py", line 435, in keystrokeReceived
jasmin               |     m()
jasmin               |   File "/usr/local/lib/python3.11/site-packages/jasmin/protocols/cli/protocol.py", line 192, in handle_RETURN
jasmin               |     return recvline.HistoricRecvLine.handle_RETURN(self)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/conch/recvline.py", line 569, in handle_RETURN
jasmin               |     return RecvLine.handle_RETURN(self)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/twisted/conch/recvline.py", line 493, in handle_RETURN
jasmin               |     self.lineReceived(line)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/jasmin/protocols/cli/jcli.py", line 87, in lineReceived
jasmin               |     return CmdProtocol.lineReceived(self, line)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/jasmin/protocols/cli/protocol.py", line 150, in lineReceived
jasmin               |     return self.sessionLineCallback(cmd, arg, line)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/jasmin/protocols/cli/managers.py", line 14, in filter_cmd_and_call
jasmin               |     return fCallback(self, *args, **kwargs)
jasmin               |   File "/usr/local/lib/python3.11/site-packages/jasmin/protocols/cli/mtrouterm.py", line 103, in parse_args_and_call_with_instance
jasmin               |     RouteClassArgs = inspect.getargspec(self.sessBuffer['route_class'].__init__).args
jasmin               | builtins.AttributeError: module 'inspect' has no attribute 'getargspec'