remt ls fails with stacktrace
Hi Artur, great Software! I do not write this issue to ask you for a fix, but to create a search engine findable documentation.
Issue: remt ls fails with
Traceback (most recent call last):
File "/home/user/.local/bin/remt", line 110, in <module>
asyncio.run(cmd(args))
File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run
return loop.run_until_complete(main)
File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/home/user/.local/lib/python3.9/site-packages/remt/cmd.py", line 282, in cmd_ls
async with remt_ctx() as ctx:
File "/usr/lib/python3.9/contextlib.py", line 175, in __aenter__
return await self.gen.__anext__()
File "/home/user/.local/lib/python3.9/site-packages/remt/cmd.py", line 123, in remt_ctx
meta = read_meta(dir_meta)
File "/home/user/.local/lib/python3.9/site-packages/remt/meta.py", line 221, in read_meta
return resolve_uuid(meta)
File "/home/user/.local/lib/python3.9/site-packages/remt/meta.py", line 116, in resolve_uuid
return {to_path(data, meta): data for data in meta.values()}
File "/home/user/.local/lib/python3.9/site-packages/remt/meta.py", line 116, in <dictcomp>
return {to_path(data, meta): data for data in meta.values()}
File "/home/user/.local/lib/python3.9/site-packages/remt/meta.py", line 107, in to_path
return to_path(meta[parent], meta) + '/' + name
Source: You have a folder with files in it. You delete the folder. Remarkable-tablet updates the folders metadata. The folders parent is now called "trash". Trash cannot be traversed.
Workaround: Empty your trash.
Example of file Metadata creating the crash
linux: $ remt ls
parent = 67b16a3e-92ab-4df4-8e5a-b44702440bbb
name= A Little Story About the `yes` Unix Command | Matthias Endler.pdf
parent = 728e2d74-3ece-4b7d-8c28-941c7c137127
name= mst05
parent = 70da0a05-da44-4122-aba7-fc749ac245b4
name= 2022-08-07_train_ticket.pdf
Traceback (most recent call last):
File "/home/user/.local/bin/remt", line 110, in <module>
asyncio.run(cmd(args))
File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run
return loop.run_until_complete(main)
File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/home/user/.local/lib/python3.9/site-packages/remt/cmd.py", line 282, in cmd_ls
async with remt_ctx() as ctx:
File "/usr/lib/python3.9/contextlib.py", line 175, in __aenter__
return await self.gen.__anext__()
File "/home/user/.local/lib/python3.9/site-packages/remt/cmd.py", line 123, in remt_ctx
meta = read_meta(dir_meta)
File "/home/user/.local/lib/python3.9/site-packages/remt/meta.py", line 221, in read_meta
return resolve_uuid(meta)
File "/home/user/.local/lib/python3.9/site-packages/remt/meta.py", line 116, in resolve_uuid
return {to_path(data, meta): data for data in meta.values()}
File "/home/user/.local/lib/python3.9/site-packages/remt/meta.py", line 116, in <dictcomp>
return {to_path(data, meta): data for data in meta.values()}
File "/home/user/.local/lib/python3.9/site-packages/remt/meta.py", line 107, in to_path
return to_path(meta[parent], meta) + '/' + name
reMarkable: ~/ cat /home/root/.local/share/remarkable/xochitl/70da0a05-da44-4122-aba7-fc749ac245b4.metadata
{
"deleted": false,
"lastModified": "1662975675301",
"metadatamodified": true,
"modified": true,
"parent": "trash",
"pinned": false,
"synced": false,
"type": "CollectionType",
"version": 0,
"visibleName": "vacation2022"
}