pyrosimple
pyrosimple copied to clipboard
rtcontrol -V broken with rtorrent 0.15.6
rtcontrol with the -V option doesn't work with the new rtorrent 0.15.6
Traceback (most recent call last):
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/util/rpc.py", line 133, in __request_xml
response = self.__transport.request(
self.__host, self.__handler, request, verbose=self.__verbose
)
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/io/scgi.py", line 165, in request
return self.parse_response(io.BytesIO(response))
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/io/scgi.py", line 59, in parse_response
return super().parse_response(response)
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
File "/usr/lib/python3.13/xmlrpc/client.py", line 1325, in parse_response
return u.close()
~~~~~~~^^
File "/usr/lib/python3.13/xmlrpc/client.py", line 642, in close
raise Fault(**self._stack[0])
xmlrpc.client.Fault: <Fault -500: 'Wrong object type.'>
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/rtorrent/.local/bin/rtcontrol", line 8, in <module>
sys.exit(run())
~~~^^
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/scripts/rtcontrol.py", line 1055, in run
RtorrentControl().run()
~~~~~~~~~~~~~~~~~~~~~^^
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/scripts/base.py", line 184, in run
self.mainloop()
~~~~~~~~~~~~~^^
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/scripts/rtcontrol.py", line 963, in mainloop
self.show_in_view(view, matches)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/scripts/rtcontrol.py", line 718, in show_in_view
targetname = engine.show(
matches,
...<2 lines>...
disjoin=remove,
)
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/torrent/rtorrent.py", line 933, in show
proxy.d.views.push_back_unique(item.hash, view_name)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.13/xmlrpc/client.py", line 1096, in __call__
return self.__send(self.__name, args)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/util/rpc.py", line 242, in __request
return self.__request_switch(methodname, params)
~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/util/rpc.py", line 268, in __request_switch
raise exc
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/util/rpc.py", line 260, in __request_switch
return self.__request_xml(methodname, params)
~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
File "/home/rtorrent/.local/pipx/venvs/pyrosimple/lib/python3.13/site-packages/pyrosimple/util/rpc.py", line 137, in __request_xml
raise RpcError(exc.faultString, exc.faultCode) from exc
pyrosimple.util.rpc.RpcError: <RpcError -500: 'Wrong object `type.'>
``
I also get this (perhaps related) error when using --json with rtorrent 0.16.0:
Traceback (most recent call last):
File "/nix/store/24bbkg6v4cymjac2k7rnxlzmq1gy2nfn-pyrosimple-2.14.2/bin/.rtcontrol-wrapped", line 9, in <module>
sys.exit(run())
^^^^^
File "/nix/store/24bbkg6v4cymjac2k7rnxlzmq1gy2nfn-pyrosimple-2.14.2/lib/python3.12/site-packages/pyrosimple/scripts/rtcontrol.py", line 1055, in run
RtorrentControl().run()
File "/nix/store/24bbkg6v4cymjac2k7rnxlzmq1gy2nfn-pyrosimple-2.14.2/lib/python3.12/site-packages/pyrosimple/scripts/base.py", line 184, in run
self.mainloop()
File "/nix/store/24bbkg6v4cymjac2k7rnxlzmq1gy2nfn-pyrosimple-2.14.2/lib/python3.12/site-packages/pyrosimple/scripts/rtcontrol.py", line 980, in mainloop
{name: getattr(i, name) for name in list(engine.FIELD_REGISTRY)}
^^^^^^^^^^^^^^^^
File "/nix/store/24bbkg6v4cymjac2k7rnxlzmq1gy2nfn-pyrosimple-2.14.2/lib/python3.12/site-packages/pyrosimple/torrent/engine.py", line 257, in __get__
return self.valtype(
^^^^^^^^^^^^^
TypeError: unhashable type: 'list'