-
-
Notifications
You must be signed in to change notification settings - Fork 102
Closed
Labels
Description
I encountered an error while migrating data from Moin 1.9 to Moin 2.0. Below are the details:
Environment
moin --versionPython 3.9.21
Flask 3.1.0
Werkzeug 3.1.3
Error Log
2025-01-04 21:28:47,924 INFO moin.cli.migration.moin19.import19:194 PHASE3: Converting last revision of Moin 1.9 items to Moin 2.0 markup ...
Traceback (most recent call last):
File "/usr/local/bin/moin", line 8, in <module>
sys.exit(cli())
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1161, in __call__
return self.main(*args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1082, in main
rv = self.invoke(ctx)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1697, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 1443, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 788, in invoke
return __callback(*args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/click/decorators.py", line 33, in new_func
return f(get_current_context(), *args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/flask/cli.py", line 400, in decorator
return ctx.invoke(f, *args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/click/core.py", line 788, in invoke
return __callback(*args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/moin/cli/migration/moin19/import19.py", line 213, in ImportMoin19
dom = conv_in(data_in, CONTENTTYPE_MOINWIKI)
File "/usr/local/lib/python3.9/site-packages/moin/converters/moinwiki_in.py", line 142, in __call__
body = self.parse_block(iter_content, arguments)
File "/usr/local/lib/python3.9/site-packages/moin/converters/moinwiki_in.py", line 1084, in parse_block
self.indent_repl(iter_content, stack, line, **data)
File "/usr/local/lib/python3.9/site-packages/moin/converters/moinwiki_in.py", line 512, in indent_repl
self._apply(match, "block", it, new_stack)
File "/usr/local/lib/python3.9/site-packages/moin/converters/moinwiki_in.py", line 1070, in _apply
getattr(self, func)(*args, **data)
File "/usr/local/lib/python3.9/site-packages/moin/converters/moinwiki_in.py", line 365, in block_text_repl
self.parse_inline(text, stack, self.inline_re)
File "/usr/local/lib/python3.9/site-packages/moin/converters/moinwiki_in.py", line 1100, in parse_inline
stack.top_append_ifnotempty(text[pos:])
File "/usr/local/lib/python3.9/site-packages/moin/converters/_util.py", line 160, in top_append_ifnotempty
self.top_append(elem)
File "/usr/local/lib/python3.9/site-packages/moin/converters/_util.py", line 156, in top_append
self.top().append(elem)
File "/usr/local/lib/python3.9/site-packages/moin/converters/_util.py", line 150, in top
return self._list[-1].elem
IndexError: list index out of range
Steps to Reproduce
- Create a page in Moin 1.9 with the following content:
* --(A::B)-- C - Execute the Moin 1.9 to 2.0 migration process.
- Observe the error during Phase 3 (converting last revision to Moin 2.0 markup).
Expected Behavior
Migration should complete without errors, even for pages containing the specified text.
Actual Behavior
An IndexError is raised during the migration process when encountering a page with the specified text.
Additional Information
Please let me know if further details are needed for debugging this issue.