Skip to content

urwid.util.TagMarkupException: Invalid markup element: None #559

@l29ah

Description

@l29ah

Trying to use toot with my mitra instance, it crashes right away when running toot tui:

Traceback (most recent call last):
  File "/usr/lib/python-exec/python3.13/toot", line 8, in <module>
    sys.exit(cli())
             ~~~^^
  File "/usr/lib/python3.13/site-packages/click/core.py", line 1485, in __call__
    return self.main(*args, **kwargs)
           ~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/click/core.py", line 1406, in main
    rv = self.invoke(ctx)
  File "/usr/lib/python3.13/site-packages/click/core.py", line 1873, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/click/core.py", line 1269, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/click/core.py", line 824, in invoke
    return callback(*args, **kwargs)
  File "/usr/lib/python3.13/site-packages/toot/cli/__init__.py", line 136, in wrapped
    return f(get_context(), *args, **kwargs)
  File "/usr/lib/python3.13/site-packages/toot/cli/tui.py", line 81, in tui
    tui.run()
    ~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/toot/tui/app.py", line 164, in run
    self.loop.run()
    ~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/urwid/event_loop/main_loop.py", line 339, in run
    self._run()
    ~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/urwid/event_loop/main_loop.py", line 441, in _run
    self.event_loop.run()
    ~~~~~~~~~~~~~~~~~~~^^
  File "/usr/lib/python3.13/site-packages/urwid/event_loop/asyncio_loop.py", line 253, in run
    raise exc.with_traceback(exc.__traceback__)
  File "/usr/lib/python3.13/asyncio/events.py", line 89, in _run
    self._context.run(self._callback, *self._args)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/urwid/event_loop/asyncio_loop.py", line 123, in wrapper
    return callback(*args, **kwargs)
  File "/usr/lib/python3.13/site-packages/urwid/event_loop/main_loop.py", line 220, in cb
    callback(self, user_data)
    ~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/toot/tui/app.py", line 210, in <lambda>
    self.loop.set_alarm_in(0, lambda *args: done_callback(result))
                                            ~~~~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/site-packages/toot/tui/app.py", line 299, in _done_initial
    self.timeline = self.build_timeline(timeline_name, statuses, local)
                    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/toot/tui/app.py", line 247, in build_timeline
    timeline = Timeline(self, name, statuses)
  File "/usr/lib/python3.13/site-packages/toot/tui/timeline.py", line 58, in __init__
    self.status_details = StatusDetails(self, focused_status)
                          ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/toot/tui/timeline.py", line 368, in __init__
    widget_list = list(self.content_generator(status.original, reblogged_by)
        if status else ())
  File "/usr/lib/python3.13/site-packages/toot/tui/timeline.py", line 449, in content_generator
    yield self.author_header(reblogged_by)
          ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/toot/tui/timeline.py", line 430, in author_header
    atxt = urwid.Pile([("pack", urwid.Text(("bold", self.status.original.author.display_name))),
                                ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/urwid/widget/text.py", line 76, in __init__
    self.set_text(markup)
    ~~~~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/site-packages/urwid/widget/text.py", line 121, in set_text
    self._text, self._attrib = decompose_tagmarkup(markup)
                               ~~~~~~~~~~~~~~~~~~~^^^^^^^^
  File "/usr/lib/python3.13/site-packages/urwid/util.py", line 436, in decompose_tagmarkup
    tl, al = _tagmarkup_recurse(tm, None)
             ~~~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "/usr/lib/python3.13/site-packages/urwid/util.py", line 478, in _tagmarkup_recurse
    return _tagmarkup_recurse(element, attr)
  File "/usr/lib/python3.13/site-packages/urwid/util.py", line 481, in _tagmarkup_recurse
    raise TagMarkupException(f"Invalid markup element: {tm!r}")
urwid.util.TagMarkupException: Invalid markup element: None

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