mailman import21 command breaks on Python 3.7.4
After bumping the CI system to use Python 3.7.4, I observed a failing test. Further inspection led me to the failing import21 command on 3.7.4.
╰─$ mailman import21 ant.example.com src/mailman/testing/config-with-instances.pck 1 ↵
Traceback (most recent call last):
File "/home/maxking/.virtualenvs/mm3/bin/mailman", line 11, in <module>
load_entry_point('mailman', 'console_scripts', 'mailman')()
File "/home/maxking/.virtualenvs/mm3/lib64/python3.7/site-packages/Click-7.0-py3.7.egg/click/core.py", line 764, in __call__
return self.main(*args, **kwargs)
File "/home/maxking/.virtualenvs/mm3/lib64/python3.7/site-packages/Click-7.0-py3.7.egg/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "/home/maxking/Documents/mm3/core/src/mailman/bin/mailman.py", line 68, in invoke
return super().invoke(ctx)
File "/home/maxking/.virtualenvs/mm3/lib64/python3.7/site-packages/Click-7.0-py3.7.egg/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/home/maxking/.virtualenvs/mm3/lib64/python3.7/site-packages/Click-7.0-py3.7.egg/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/maxking/.virtualenvs/mm3/lib64/python3.7/site-packages/Click-7.0-py3.7.egg/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/home/maxking/.virtualenvs/mm3/lib64/python3.7/site-packages/Click-7.0-py3.7.egg/click/decorators.py", line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File "/home/maxking/Documents/mm3/core/src/mailman/commands/cli_import.py", line 64, in import21
pickle_file, encoding='utf-8', errors='ignore')
ModuleNotFoundError: No module named 'Mailman'
This is mostly caused by the hacked_sys_modules call. It seems to me that we can no longer add a stub to Mailman.Bouncer without also adding one for Mailman too.
Seems to be related to https://bugs.python.org/issue34572