Skip to content

Issue with RemoteBus missing setter for protocol #34

@tauonteilchen

Description

@tauonteilchen

Hi,
I was playing a bit with the python-can and python-can-remote tools.

Server Side:

.local/pipx/venvs/python-can/bin/python -m can_remote --interface=socketcan --channel=can0 --bitrate=500000
2023-12-01 20:07:42,075 Logging set to DEBUG
2023-12-01 20:07:42,088 Server listening on 0.0.0.0:54701
2023-12-01 20:07:42,088 Connect using channel 'ws://localhost:54701/'
2023-12-01 20:07:42,088 Open browser to 'http://localhost:54701/'
2023-12-01 20:07:51,037 Got connection from 127.0.0.1
2023-12-01 20:07:51,037 "GET / HTTP/1.1" 101 -
2023-12-01 20:07:51,039 Config received: {'single_handle': True, 'bitrate': 500000}
2023-12-01 20:07:51,056 Created a socket
2023-12-01 20:07:51,057 Connected to bus 'socketcan channel 'can0''
2023-12-01 20:07:51,083 Websocket closed: Status: 1006, reason: Socket closed unexpectedly
2023-12-01 20:07:51,558 Disconnecting from CAN bus
2023-12-01 20:07:51,559 Closing connection to 127.0.0.1
2023-12-01 20:18:57,576 Closing server

Client Side:

.local/pipx/venvs/python-can/bin/python -m can.viewer -c ws://localhost:54701/ -i remote -b 500000 
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/home/tauon/.local/pipx/venvs/python-can/lib/python3.11/site-packages/can/viewer.py", line 563, in <module>
    main()
  File "/home/tauon/.local/pipx/venvs/python-can/lib/python3.11/site-packages/can/viewer.py", line 555, in main
    bus = _create_bus(parsed_args, **additional_config)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/tauon/.local/pipx/venvs/python-can/lib/python3.11/site-packages/can/logger.py", line 104, in _create_bus
    return Bus(parsed_args.channel, **config)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/tauon/.local/pipx/venvs/python-can/lib/python3.11/site-packages/can/util.py", line 378, in wrapper
    return f(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^
  File "/home/tauon/.local/pipx/venvs/python-can/lib/python3.11/site-packages/can/interface.py", line 135, in Bus
    bus = cls(channel, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/tauon/.local/pipx/venvs/python-can/lib/python3.11/site-packages/can_remote/client.py", line 35, in __init__
    self.protocol = RemoteClientProtocol(config, websocket)
    ^^^^^^^^^^^^^
AttributeError: property 'protocol' of 'RemoteBus' object has no setter
RemoteBus was not properly shut down

Installed versions:

.local/pipx/venvs/python-can/bin/python -m pip list
Package           Version
----------------- -------
msgpack           1.0.7
packaging         23.2
pip               23.3.1
python-can        4.3.0
python-can-remote 0.2.1
setuptools        69.0.2
typing_extensions 4.8.0
wheel             0.42.0
wrapt             1.16.0

I get the same error message with the python example from your readme. Webfrontend is reachable and works find

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions