Setuptools METADA error

I’m getting this errors in my email from indico, is this a problem with versionsof setuptools?

2021-04-16 17:06:41,861  295dab1e4a294413  -       indico.flask - ERROR errors.py:99 -- Uncaught Exception

Traceback (most recent call last):
  File "/opt/indico/.venv/lib/python2.7/site-packages/flask/app.py", line 1950, in full_dispatch_request
    rv = self.dispatch_request()
  File "/opt/indico/.venv/lib/python2.7/site-packages/flask/app.py", line 1936, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/controllers/entry.py", line 56, in event_or_shorturl
    return func()
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/controllers/entry.py", line 35, in <lambda>
    func = lambda: RHDisplayEvent().process()
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/web/rh.py", line 275, in process
    res = self._do_process()
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/controllers/base.py", line 88, in _do_process
    return RHEventBase._do_process(self)
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/web/rh.py", line 245, in _do_process
    rv = self._process()
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/controllers/display.py", line 66, in _process
    return self._display_simple()
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/controllers/display.py", line 78, in _display_simple
    return WPSimpleEventDisplay(self, self.event, self.theme_id, self.theme_override).display()
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/web/views.py", line 264, in display
    body = to_unicode(self._display(params))
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/web/views.py", line 353, in _display
    return self._apply_decoration(self._get_body(params))
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/views.py", line 216, in _get_body
    lectures=lectures)
  File "/opt/indico/.venv/lib/python2.7/site-packages/flask/templating.py", line 140, in render_template
    ctx.app,
  File "/opt/indico/.venv/lib/python2.7/site-packages/flask/templating.py", line 120, in _render
    rv = template.render(context)
  File "/opt/indico/.venv/lib/python2.7/site-packages/jinja2/environment.py", line 1090, in render
    self.environment.handle_exception()
  File "/opt/indico/.venv/lib/python2.7/site-packages/jinja2/environment.py", line 832, in handle_exception
    reraise(*rewrite_traceback_stack(source=source))
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/templates/display/indico/meeting.html", line 54, in top-level template code
    {% block body %}
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/templates/display/indico/meeting.html", line 69, in block "body"
    {{ template_hook('meeting-body', event=event) }}
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/web/flask/templating.py", line 190, in call_template_hook
    for is_markup, priority, value in values_from_signal(signals.plugin.template_hook.send(unicode(name), **kwargs),
  File "/opt/indico/.venv/lib/python2.7/site-packages/blinker/base.py", line 267, in send
    for receiver in self.receivers_for(sender)]
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/web/flask/templating.py", line 161, in _func
    return markup, priority, receiver(**kw)
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/timetable/views/__init__.py", line 122, in inject_meeting_body
    show_children_location=show_children_location, multiple_days=multiple_days, **kwargs)
  File "/opt/indico/.venv/lib/python2.7/site-packages/flask/templating.py", line 140, in render_template
    ctx.app,
  File "/opt/indico/.venv/lib/python2.7/site-packages/flask/templating.py", line 120, in _render
    rv = template.render(context)
  File "/opt/indico/.venv/lib/python2.7/site-packages/jinja2/environment.py", line 1090, in render
    self.environment.handle_exception()
  File "/opt/indico/.venv/lib/python2.7/site-packages/jinja2/environment.py", line 832, in handle_exception
    reraise(*rewrite_traceback_stack(source=source))
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/timetable/templates/display/indico/meeting.html", line 50, in top-level template code
    show_location=show_siblings_location) }}
  File "/opt/indico/.venv/lib/python2.7/site-packages/jinja2/runtime.py", line 679, in _invoke
    rv = self._func(*arguments)
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/timetable/templates/display/indico/_contribution.html", line 43, in template
    {{ render_description(contrib, class='contrib-description') }}
  File "/opt/indico/.venv/lib/python2.7/site-packages/jinja2/runtime.py", line 679, in _invoke
    rv = self._func(*arguments)
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/modules/events/timetable/templates/display/indico/_common.html", line 7, in template
    {{ item.description }}
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/util/string.py", line 641, in __html__
    return render_markdown(unicode(self), extensions=('nl2br', 'tables'))
  File "/opt/indico/.venv/lib/python2.7/site-packages/indico/util/string.py", line 233, in render_markdown
    result = bleach.clean(markdown.markdown(text, **kwargs), tags=BLEACH_ALLOWED_TAGS,
  File "/opt/indico/.venv/lib/python2.7/site-packages/markdown/core.py", line 390, in markdown
    md = Markdown(**kwargs)
  File "/opt/indico/.venv/lib/python2.7/site-packages/markdown/core.py", line 100, in __init__
    configs=kwargs.get('extension_configs', {}))
  File "/opt/indico/.venv/lib/python2.7/site-packages/markdown/core.py", line 126, in registerExtensions
    ext = self.build_extension(ext, configs.get(ext, {}))
  File "/opt/indico/.venv/lib/python2.7/site-packages/markdown/core.py", line 159, in build_extension
    ext = entry_points[0].load()
  File "/opt/indico/.venv/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2317, in load
    
  File "/opt/indico/.venv/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2340, in require
    that this seems to be by design...
  File "/opt/indico/.venv/lib/python2.7/site-packages/pkg_resources/__init__.py", line 782, in resolve
    replace_conflicting=replace_conflicting
  File "/opt/indico/.venv/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2607, in requires
    )
  File "/opt/indico/.venv/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2871, in _dep_map
    """Ensure self.location is on path
  File "/opt/indico/.venv/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2880, in _compute_dependencies
    - If location is already on path anywhere (not eggs)
  File "/opt/indico/.venv/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2862, in _parsed_pkg_info
    if group is not None:
  File "/opt/indico/.venv/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1400, in get_metadata
    def get_resource_string(self, manager, resource_name):
  File "/opt/indico/.venv/lib/python2.7/site-packages/pkg_resources/__init__.py", line 1512, in _get
    >>> bool(warned)
IOError: [Errno 2] No such file or directory: '/opt/indico/.venv/lib/python2.7/site-packages/setuptools-39.2.0.dist-info/METADATA'

Did you restart systemctl restart indico-celery.service after the updates?

Yes, the only thing different is the urllib3 that i’ve updated after this issue:

Maybe recreating the virtualenv would be a good idea… Something is probably messed up there, and figuring out what it is likely a waste of time:

deactivate
rm -rf ~/.venv
virtualenv ~/.venv
source ~/.venv/bin/activate
pip install -U pip setuptools

Then pip install indico and if needed pip install indico-plugins.