Changes in MoinMoin

MoinMoin 2 Version History

Please note: It is recommended that existing wiki’s be upgraded to the latest moin 1.9.x release before converting to Moin 2. However, this may not be a necessary step as the 1.9.x file structure has not changed recently.

Version 2.0.0b5 2026-03-24

This is an unstable beta release and is not suitable for a production wiki. Test carefully and report new issues and feature requests on the issue tracker: https://github.com/moinwiki/moin/issues

After installing this release as an upgrade on an existing Moin 2 wiki, be sure to:

  • Copy or merge src/moin/config/wikiconfig.py into the root-level wikiconfig.py.

  • Rebuild the Whoosh indexes:

    • moin index-destroy

    • moin index-create

    • moin index-build

Fixes

  • 2026-03-19 Dump-Html: replace ‘+index’ at the end of a href into ‘index.html’ (Roland Rüdenauer)

  • 2026-03-19 Dump-Html: turn option –convenience-duplicates into a flag (Roland Rüdenauer)

  • 2026-03-18 Update dump-html usage docs (RogerHaase)

  • 2026-03-14 Dump-Html: use click.echo instead of print (Roland Rüdenauer)

  • 2026-03-14 Dump-Html: render template dictionary.js and copy the resulting file into the static/js subfolder (Roland Rüdenauer)

  • 2025-03-10 Dump-Html: fix issues with creating HTML dumps (Roland Rüdenauer)

  • 2025-03-08 Dump-Html: split large function into smaller pieces (Roland Rüdenauer)

  • 2025-03-08 Unit testing: add basic test for dump-html command (Roland Rüdenauer)

  • 2026-03-16 Unit testing: add fixture ‘moin_test_dir’ (Roland Rüdenauer)

  • 2026-03-16 Unit testing: rename getBackupPath into get_backup_path (Roland Rüdenauer)

  • 2026-03-16 Unit testing: rename variables artifact_* (Roland Rüdenauer)

  • 2026-03-16 Unit testing: rename fixtures artifact_dir, artifact_dir2 (Roland Rüdenauer)

  • 2026-03-15 Unit testing: require pytest>=9.0.0 (Roland Rüdenauer)

  • 2026-03-09 Unit testing: remove deprecated PYTHONIOENCODING from subprocess environment (Roland Rüdenauer)

  • 2026-03-09 Unit testing: split the run function into run/start (Roland Rüdenauer)

  • 2026-03-14 Markdown-In: prevent duplicate flash messages. (Günter Milde)

  • 2026-03-12 Markdown-In: further simplify postproc_text() (Günter Milde)

  • 2026-03-14 HTML-In: support <center> tag. Simplify visit_xhtml_list() (Günter Milde)

  • 2025-10-27 Improve performance by caching the result of searching the file system for theme template files. (Roland Rüdenauer)

  • 2026-03-12 HTML-In, Markdown-In: do not fail at an <a> without href attribute. (Günter Milde)

  • 2026-03-11 Markdown-In: simplify postproc_text(). (Günter Milde)

  • 2026-03-06 Markdown-In: Fix handling of HTML markup. (Günter Milde)

  • 2026-03-06 Markdown-In: add/sort test samples. (Günter Milde)

  • 2026-03-02 Markdown-In: Update docstrings and comments, add type hints. (Günter Milde)

  • 2026-03-09 Unit testing: fix cond. expression in get_dirs (Roland Rüdenauer)

  • 2026-03-09 Quickinstall: change the default virtual environment path (Roland Rüdenauer)

  • 2026-03-08 Switch to HTMLWriter as default in conv_serialize to comply with HTML5 (UlrichB22)

  • 2026-03-06 moinwiki_in.py: ignore unbalanced size element (UlrichB22)

  • 2026-02-14 Add error handling for top_append_ifnotempty and moinwiki_in converter (UlrichB22)

  • 2026-03-06 Templates: Trailing slash on void elements has no effect and interacts badly with unquoted attribute values (Roland Rüdenauer)

  • 2026-03-06 Templates: fix warning: A table row was 7 columns wide and exceeded the column count established by the first row (6) (Roland Rüdenauer)

  • 2026-03-06 dump-html: log the item name in case page rendering runs into an exception (Roland Rüdenauer)

  • 2026-03-06 Quickinstall: turn argument ‘target’ of ViewLogFile into a positional argument (Roland Rüdenauer)

  • 2025-03-11 dump-html: get location of wiki_local folder from the moin configuration settings (Roland Rüdenauer)

  • 2026-03-06 Improve layout of sidebar (Christoph Klassen)

  • 2026-03-05 Quickinstall: use command keys instead of string literals (Roland Rüdenauer)

  • 2026-03-05 Quickinstall: fix issues found in code review (Roland Rüdenauer)

  • 2026-03-04 Quickinstall: default to execute quick installation command after new clone and providing no arguments (Roland Rüdenauer)

  • 2026-03-04 Cleanup quickinstall.py source code (Roland Rüdenauer)

  • 2026-03-03 Templates: show itemview links when viewing ‘subitems’ (+index) (Roland Rüdenauer)

  • 2026-03-02 Use sys.version_info instead of sys.hexversion (Roland Rüdenauer)

  • 2026-03-02 README: add build status badges (Roland Rüdenauer)

  • 2026-03-02 Update requirements for building documentation (Roland Rüdenauer)

  • 2026-03-02 CI: use Python 3.12 to build documentation (Roland Rüdenauer)

  • 2026-02-28 Update dependencies (Roland Rüdenauer)

  • 2026-02-28 Fix name collision (Roland Rüdenauer)

  • 2026-02-28 Type hints: remove no longer required casts (Roland Rüdenauer)

  • 2026-02-27 Move import DefaultConfig to top of app.py (Roland Rüdenauer)

  • 2026-02-27 Type hints: add type hints for globals app, flaskg (Roland Rüdenauer)

  • 2026-02-27 Markdown-In: Stop placing spurious wrappers around blocks with inline HTML. (Günter Milde)

  • 2025-03-06 Use class derived from flask.Flask as moin application class (Roland Rüdenauer)

  • 2026-02-27 Add ‘mypy’ tox environment. (Roland Rüdenauer)

  • 2026-02-26 Markdown-In: Handle more HTML tags with embedded Markdown markup. (Günter Milde)

  • 2026-02-26 Markdown-In: Fix handling of inline tag attributes. (Günter Milde)

  • 2026-02-26 Markdown-In: simplify _create_element_for_tag(). (Günter Milde)

  • 2026-02-27 Markdown-In: Update/Fix tests. (Günter Milde)

  • 2026-02-26 Prevent jumping width of sidebar (Christoph Klassen)

  • 2026-02-26 Show aliases only on hovering (Christoph Klassen)

  • 2026-02-26 Re-add borders for tables (Christoph Klassen)

  • 2026-02-25 Markdown-In: samples for failing HTML with embedded Markup. (Günter Milde)

  • 2026-02-25 Markdown-In: Test ignored HTML tags. (Günter Milde)

  • 2026-02-24 Markdown-In: test update. (Günter Milde)

  • 2026-02-24 Markdown-In: small code simplification. (Günter Milde)

  • 2026-02-17 Fix markdown parser crash on emphasized text inside HTML tags (#1838) (Apoorv Darshan)

  • 2026-02-23 wikiutil.py: handle NotFound exception for invalid url path (UlrichB22)

  • 2026-02-23 Wiki config: remove unsed config options group “Storage Namespaces” (Roland Rüdenauer)

  • 2026-02-23 Make decode_names a class attribute (Roland Rüdenauer)

  • 2026-02-22 Refactoring: split moin flask app configuration into separate functions (Roland Rüdenauer)

  • 2026-02-22 Wiki config: fix declaration of configuration parameters (Roland Rüdenauer)

  • 2026-02-22 Wiki config: declare and initialize field “custom_css_path” (Roland Rüdenauer)

  • 2026-02-22 Wiki config: add new field “wiki_local_dir” (Roland Rüdenauer)

  • 2026-02-22 Turn IndexStorageConfig into a NamedTuple (Roland Rüdenauer)

  • 2026-02-22 Unit testing: use PasswordHasherConfig in wikiconfig.py (Roland Rüdenauer)

  • 2026-02-22 Set wiki local path in wikiconfig.py (Roland Rüdenauer)

  • 2026-02-22 Type hints: correct type IndexStorageConfig (Roland Rüdenauer)

  • 2026-02-22 Quickinstall: “make ./m css” work again using the setup prepared in contrib/css-build (Roland Rüdenauer)

  • 2026-02-21 jquery 4 breaks Global Index/index_action.js “$.trim” #2165 (RogerHaase)

  • 2026-01-22 Simplify storage backend class hierarchy and add more type hints to moin configuration classes (Roland Rüdenauer)

  • 2026-02-20 Type hints: correct type hint of split_namespace (Roland Rüdenauer)

  • 2026-02-20 Add mypy configuration to pyproject.toml (Roland Rüdenauer)

  • 2026-02-19 Cleanup file upload on index page (Roland Rüdenauer)

  • 2026-02-19 Index form: fix wrong label texts generated for content-type filter (Roland Rüdenauer)

  • 2026-02-09 Improve moin.log.load_config (Roland Rüdenauer)

  • 2026-02-17 Fix: Set background-color to transparent for Pygments classes in dark mode (srikaaviya)

  • 2026-02-17 Remove unused XStatic packages also from dump_html code (Roland Rüdenauer)

  • 2026-02-17 Remove unused XStatic packages (Roland Rüdenauer)

  • 2026-02-17 Fix errors in jQuery File Upload caused by removed jQuery 4.X functions/methods (Roland Rüdenauer)

  • 2026-02-17 Bundle the blueimp jQuery File Upload plugin version 10.32.0 (Roland Rüdenauer)

  • 2026-02-17 Bundle fork of the jquery tablesorter plugin working with jQuery 4 (Roland Rüdenauer)

  • 2026-02-16 Do not convert smileys inside “kbd” and “sample” elements. (Günter Milde)

  • 2026-02-15 minor css changes to improve long search form and user settings > appearance (RogerHaase)

  • 2026-02-14 comment out several checkboxes that are no longer used (RogerHaase)

  • 2026-02-13 adding .js files to static/js breaks “/m coding-std” fixes #2159 (RogerHaase)

  • 2026-02-10 Config data cache: rename field ‘pwd_context’ into ‘pwd_hasher’ (Roland Rüdenauer)

  • 2026-02-10 url_for_item: require keyword arguments after the first argument ‘item_name’ (Roland Rüdenauer)

  • 2026-02-12 Smiley converter: prevent smiley replacment inside of a literal element (Roland Rüdenauer)

  • 2026-02-13 Smiley converter tests: add test for smiley gets ignored inside a literal element (Roland Rüdenauer)

  • 2026-02-13 Smiley converter tests: fix tests for smiley ignored in code element (Roland Rüdenauer)

  • 2026-02-11 Apply some recommendations from stylelint for CSS files (UlrichB22)

  • 2026-02-11 Replace use of no longer available pkg_resources.get_distribution using importlib (Roland Rüdenauer)

  • 2026-02-09 Format editor.js (Roland Rüdenauer)

  • 2026-02-08 Support editing Markdown content using CKEditor5 (Roland Rüdenauer)

  • 2026-02-09 Add safe_markup() as a wrapper around markupsafe.Markup. This avoids repeated Bandit B704 warnings. (UlrichB22)

  • 2026-02-09 Fix for Python 3.10: use LiteralString from package typing_extensions (Roland Rüdenauer)

  • 2026-02-08 Improve type hints for class moin.items.Content (Roland Rüdenauer)

  • 2026-02-08 Remove dependency XStatic-Bootstrap (Roland Rüdenauer)

  • 2026-02-08 Bundle bootstrap.min.js form Bootstrap 5.3.8 (Roland Rüdenauer)

  • 2026-02-08 Limit black to version 26.x (UlrichB22)

  • 2026-02-08 Run black 26.1 on more files (UlrichB22)

  • 2026-02-08 Run black 26.1 - the multiline_string_handling makes some strings more compact (UlrichB22)

  • 2026-02-08 Raise black version to 26.1 (UlrichB22)

  • 2026-02-07 remove _valued_label workaround for flatland radio/checkbox bug #2114 (RogerHaase)

  • 2026-02-07 Fix: Added dark mode Pygments syntax highlighting for topside theme (srikaaviya)

  • 2026-01-27 Converters: Update conversion of “monospace” inline elements. (Günter Milde)

  • 2026-02-05 Add page creation timing data to the page footer (Roland Rüdenauer)

  • 2026-02-06 Fix Clock.stop(): remove the first element of the timer’s entries, not the last one (Roland Rüdenauer)

  • 2026-02-05 Theming: handle the case where a user has no theme configured without logging a warning message (Roland Rüdenauer)

  • 2026-01-29 Markdown-out: Use HTML tag instead of trailing spaces for hard line break. (Günter Milde)

  • 2026-01-28 Markdown tests: Simplify base tests in Markdown round-trip (Günter Milde)

  • 2026-01-28 Markdown-out: reduce redundant code, remove dead code. (Günter Milde)

  • 2026-02-02 Update pre-commit hooks (Roland Rüdenauer)

  • 2026-02-03 Update jQuery to version 4.0.0 (Roland Rüdenauer)

  • 2026-02-03 Exclude some files from pre-commit hooks (Roland Rüdenauer)

  • 2026-02-02 Revert pyproject.toml to match upstream master (srikaaviya)

  • 2026-02-01 Fix: Handle binary file uploads in diff view and improve error messaging (srikaaviya)

  • 2026-01-31 Adjust moin editor help links (Roland Rüdenauer)

  • 2026-01-25 Bundle version 47.4.0 of CKEditor5 (Roland Rüdenauer)

  • 2026-01-24 Converters: Use “moin-big” and “moin-small” class values for font-size change. (Günter Milde)

  • 2026-01-26 Markdown-out: Add supported attributes to HTML inline tags. (Günter Milde)

  • 2026-01-25 Remove unused function wikiutil.drawing2fname() (Günter Milde)

  • 2026-01-25 Remove unused function wikiutil.get_hostname() (Günter Milde)

  • 2026-01-25 Remove unused function wikiutil.split_ancor() (Günter Milde)

  • 2026-01-25 Remove unused function wikiutil.clean_input() (Günter Milde)

  • 2026-01-25 Remove unused function wikiutil.normalize_pagename() (Günter Milde)

  • 2026-01-24 HTML in/out: support the <aside> element. (Günter Milde)

  • 2026-01-24 Converters: Use “html-tag” attribute for HTML tags without matching Moinpage tag. (Günter Milde)

  • 2026-01-23 HTML in: simplify “br” conversion, add some comments. (Günter Milde)

  • 2026-01-23 Converters: Use moin_page.sub and moin_page.sup for sub- and superscript. (Günter Milde)

  • 2025-04-03 Fix issues: a form field element should have an id or name attribute (Roland Rüdenauer)

  • 2026-01-09 Bundle version 3.7.1 of jQuery (Roland Rüdenauer)

  • 2025-04-03 Bundle version 6.0.1 of the jQuery autosize plugin (Roland Rüdenauer)

  • 2026-01-23 Use Flatland HTML generator mode for HTML5-compliant markup (UlrichB22)

  • 2026-01-22 Small documentation fixes. (Günter Milde)

  • 2026-01-23 Fix method Item.destroy_revision (see discussion in #2103) (Roland Rüdenauer)

  • 2026-01-23 HTML in/out: Graceful degradation for <mark>. (Günter Milde)

  • 2026-01-22 Markdown out: Don’t use obsolete tag <strike>, keep “editorial tags” distinct. (Günter Milde)

  • 2026-01-21 HTML in/out: Graceful degradation for markup rendered in italics. (Günter Milde)

  • 2026-01-21 HTML in/out: Fix name mixup for inline quote element. (Günter Milde)

  • 2026-01-22 Restore itemid and tags of rst.meta and markdown.meta help items. (Günter Milde)

  • 2026-01-21 Small fixes for the Markdown and rST help pages. (Günter Milde)

  • 2026-01-21 Tell Git to end text lines with just LF also on Windows. (Günter Milde)

  • 2026-01-21 fix(search): add create page link when no results found (srikaaviya)

  • 2026-01-20 Fix: Pass display_name to create_user in CLI (srikaaviya)

  • 2026-01-20 Move middleware exception classes into moin.storage.middleware.exceptions (Roland Rüdenauer)

  • 2026-01-20 Move wiki naming related classes and functions into src/moin/utils/names.py (Roland Rüdenauer)

  • 2025-10-09 Don’t drop attributes in HTML-export of “admonitions”. (Günter Milde)

  • 2026-01-18 Mark moin help files as binary content (Roland Rüdenauer)

  • 2026-01-18 Parameter overwrite in cli_PutItem/PutItem has type bool (Roland Rüdenauer)

  • 2026-01-18 Adapt CLI unit tests to new behavior of the backend (Roland Rüdenauer)

  • 2026-01-18 Adapt unit tests of storage backends to new backend behavior (Roland Rüdenauer)

  • 2026-01-18 Always compute size and hash value when storing an item in the moin backend. (Roland Rüdenauer)

  • 2026-01-18 Put item name in validation error (Roland Rüdenauer)

  • 2026-01-18 Use the click CliRunner to allow easy debugging of unit tested code (Roland Rüdenauer)

  • 2026-01-18 Fix size and hash values in src/moin/help/welcome/users-Home.meta (Roland Rüdenauer)

  • 2026-01-18 Correct spelling in test code comments (Roland Rüdenauer)

  • 2026-01-17 Always write data and meta in MutableBackend.store(). (Roland Rüdenauer)

  • 2026-01-17 Improve readability of ReduceRevisions (Roland Rüdenauer)

  • 2026-01-17 ReduceRevisions: turn option ‘–test’ into a flag (Roland Rüdenauer)

  • 2026-01-17 Simplify MutableBackend._store_meta (Roland Rüdenauer)

  • 2026-01-17 Remove old ‘XXX Idea: …’ comments from storage code (Roland Rüdenauer)

  • 2026-01-11 Item preview: add missing check if contenttype is not None (Roland Rüdenauer)

  • 2026-01-11 Function flash() expecting string argument (not LazyString) (Roland Rüdenauer)

  • 2026-01-11 Correct type hints of acl_validate and resolve type checker warnings (Roland Rüdenauer)

  • 2026-01-11 Tests: adapt moin.utils.registry (Roland Rüdenauer)

  • 2025-12-11 Add type hints to Item/Content/Converter registration code. (Roland Rüdenauer)

  • 2026-01-18 rST in: Support custom “text-level semantics” roles based on “literal”. (Günter Milde)

  • 2025-12-26 Save/restore HTML tag info for more elements. (Günter Milde)

  • 2026-01-17 CSS fix: No border around inline code. (Günter Milde)

  • 2026-01-11 Switch to new Static-Bootstrap 5.3.8.0 release (Roland Rüdenauer)

  • 2026-01-11 reset timestamp in ‘moin maint-validate-metadata’ (UlrichB22)

  • 2026-01-11 Add types-docutils to development requirements (Roland Rüdenauer)

  • 2026-01-11 Add .editorconfig file (Roland Rüdenauer)

  • 2026-01-11 account-password cli: fix text-from-file option and add error handling (UlrichB22)

  • 2026-01-10 Run pre-commit hooks on all files. (Günter Milde)

  • 2026-01-10 Don’t use trailing whitespace in Markdown help. (Günter Milde)

  • 2026-01-10 fix comment for setuptools dependency, see #2096 (Thomas Waldmann)

  • 2026-01-10 remove passlib requirement, fixes #2096 (Thomas Waldmann)

  • 2026-01-09 Basic theme: regenerate ‘src/moin/themes/basic/static/css/theme.css’ (Roland Rüdenauer)

  • 2026-01-09 Basic theme: change theme colors to improve contrast (Roland Rüdenauer)

  • 2026-01-09 Basic theme: regenerate ‘src/moin/themes/basic/static/css/theme.css’ (Roland Rüdenauer)

  • 2026-01-09 Migrate vom Bootstrap version 4 to 5 (Roland Rüdenauer)

  • 2026-01-08 Better sample text for “address” in converter tests. (Günter Milde)

  • 2026-01-07 HTML out: restore elements represented by a special html:class value. (Günter Milde)

  • 2025-12-22 Add basic theme compilation support contrib/css-build (Roland Rüdenauer)

  • 2025-12-22 Use Bootstrap static resource files (Roland Rüdenauer)

  • 2025-12-22 Add Bootstrap v5.3.8 minified JS file as static resource (Roland Rüdenauer)

  • 2025-12-12 rST in: Update handling of inline text markup. (Günter Milde)

  • 2025-11-25 Add end-of-line and end-of-file fixers to pre-commit configuration. (Günter Milde)

  • 2026-01-01 HTML in: Fix conversion of “acronym” and “address” elements. (Günter Milde)

  • 2026-01-05 Improve error handling for account-password cli command (UlrichB22)

  • 2026-01-05 Fix ‘./moin dump-html’ using theme ‘basic’ (Roland Rüdenauer)

  • 2025-12-22 Basic theme: apply changes made in theme.css to the .scss file (Roland Rüdenauer)

  • 2026-01-02 CSS: Fix styling of preformatted blocks and inline code. (Günter Milde)

  • 2026-01-02 Fix mail delivery in CLI command ‘moin account-password –notify’ (UlrichB22)

  • 2025-12-31 New Wiki help item “help-en/autoscroll”. (Günter Milde)

  • 2025-12-31 Suggestion for a more user-friendly Wiki Help Home. (Günter Milde)

  • 2025-12-28 Less less code duplication in markdown_in converter. (Günter Milde)

  • 2025-12-31 rST in: update tests. (Günter Milde)

  • 2025-12-30 rST in: fix side-effect of rST “sidebar” styling. (Günter Milde)

  • 2025-12-30 rST docs: Synchronise sources. (Günter Milde)

  • 2025-12-30 rST docs: Revise “line-block” section. (Günter Milde)

  • 2025-12-11 rST docs: Document semantic markup roles added by <html-roles.txt>. (Günter Milde)

  • 2025-12-11 rST docs: Document the “include” directive. (Günter Milde)

  • 2025-12-11 rST docs: Document standard “text roles”. (Günter Milde)

  • 2025-12-08 rST docs: Small fixes. (Günter Milde)

  • 2025-12-28 HTML in: Simplify and fix typos. (Günter Milde)

  • 2025-12-26 Small fixes for HTML-in. (Günter Milde)

  • 2025-12-11 rST in: (re)enable inclusion of rST standard definition files. (Günter Milde)

  • 2025-12-20 Require keyword arguments in Item.create for any argument besides the item name (Roland Rüdenauer)

  • 2025-12-16 Add more type hints and fix a few minor issues (Roland Rüdenauer)

  • 2025-12-14 Import ‘Self’ from typing_extensions (backport for Python < 3.11) (Roland Rüdenauer)

  • 2025-12-13 Focus theme: extend layout.html from base.html (Roland Rüdenauer)

  • 2025-12-13 Item modification: disable preview for binary content (might be refined later) (Roland Rüdenauer)

  • 2025-12-13 Item modification: prevent crashes when preparing view data for preview rendering (Roland Rüdenauer)

  • 2025-12-13 Edit locking: apply data encoding for draft creation only to Text content (Roland Rüdenauer)

  • 2025-12-13 “everything” converter: deal with ‘rev’ parameter values not of type Revision (Roland Rüdenauer)

  • 2025-12-13 Add more type hints (Roland Rüdenauer)

  • 2025-12-20 sendmail: improve logging and error handling (UlrichB22)

  • 2025-12-12 rST in: Use class interface for “parser” directive. (Günter Milde)

  • 2025-12-12 rST in: Use class interface for “contents” directive. (Günter Milde)

  • 2025-12-12 rST in: Use class interface for “macro” directive. (Günter Milde)

  • 2025-12-11 rST in: Use class interface for “include” directive. (Günter Milde)

  • 2025-12-18 Use attribute syntax instead of xlink(“href”). (Günter Milde)

  • 2025-12-18 Unit tests: add addional mime type test patterns (Roland Rüdenauer)

  • 2025-12-18 Async file upload endpoint: fix content type detection (+jfu-server) (Roland Rüdenauer)

  • 2025-12-18 Test/fix handling of URIs with schemes that are not in the whitelist. (Günter Milde)

  • 2025-12-17 Correct code comments for tar content items (Roland Rüdenauer)

  • 2025-12-17 Async file upload endpoint: fix content type detection (+jfu-server) (Roland Rüdenauer)

  • 2025-12-17 Add mime type sanitizing mappings for “application/x-gzip” and “application/x-zip-compressed” (Roland Rüdenauer)

  • 2025-12-17 Use SMPT_SSL if the SMTP port is 465 (UlrichB22)

  • 2025-12-16 remove incomplete mail_sendmail cli feature (UlrichB22)

  • 2025-12-16 add timeout to smtplib.SMPT call (UlrichB22)

  • 2025-12-15 Fix the sitename substitution in the subject of the password recovery mail (UlrichB22)

  • 2025-12-10 rST in: Ignore “meta” directives and “raw” content in “foreign” format. (Günter Milde)

  • 2025-12-11 rST in: Support standard “interpreted text roles”. (Günter Milde)

  • 2025-12-11 rST in: Transfer “class” and “ids” attributes for more nodes. (Günter Milde)

  • 2025-12-11 rST in: Update/Fix some comments and docstrings. (Günter Milde)

  • 2025-12-11 rST in: Sort test samples. (Günter Milde)

  • 2025-12-10 rST in: More concise test samples. (Günter Milde)

  • 2025-12-13 Add support for WebP images (Roland Rüdenauer)

  • 2025-12-13 Adjust for SpooledTemporaryFile not deriving from IOBase in Python versions before 3.11 (Roland Rüdenauer)

  • 2025-12-11 Fix handling of form data in +modify request. (Roland Rüdenauer)

  • 2025-12-09 Adapt test of “html_in”-converter to new handling of “off-list” URI schemes. (Günter Milde)

  • 2025-12-08 Unify handling of URIs with schemes that are not in the whitelist. (Günter Milde)

  • 2025-12-08 rST in: fixes for transitions and line-blocks, test sidebar fix. (Günter Milde)

  • 2025-12-08 rST docs: Synchronise sources. (Günter Milde)

  • 2025-12-08 rST docs: Update “hyperlinks” section. (Günter Milde)

  • 2025-12-07 rST docs: Document recent fixes (Günter Milde)

  • 2025-12-07 rST docs: New section “preformatted text”. (Günter Milde)

  • 2025-12-07 rST docs: Update “blockquotes” section. (Günter Milde)

  • 2025-12-05 rST docs: Update “comments” section. (Günter Milde)

  • 2025-12-05 rST docs: Document rubrics, sidebars, and topics. (Günter Milde)

  • 2025-12-07 Override the “read the docs” “nowrap” rule. (Günter Milde)

  • 2025-12-05 rST docs: Improve readability. (Günter Milde)

  • 2025-12-04 rST in: Fix citation label, pass CSS classes to sidebar. (Günter Milde)

  • 2025-12-03 rST-in: Fix field-list, option-list, and docinfo. (Günter Milde)

  • 2025-11-29 rST-in: Fix syntax highlighting. (Günter Milde)

  • 2025-12-02 FileNameValidator: apply recommended code enhancements (UlrichB22)

  • 2025-12-01 Replace user option CSS_URL with CSS_FILE to avoid security vulnerabilities (UlrichB22)

  • 2025-11-29 UI: clear any currently displayed flash messages before sending form data to the moin backend (Roland Rüdenauer)

  • 2025-11-29 Basic theme: adjust styling of moin error messages (Roland Rüdenauer)

  • 2025-11-27 Improve display of moin form error messages (Roland Rüdenauer)

  • 2025-11-27 Fix typo in code comment (Roland Rüdenauer)

  • 2025-11-27 Adapt markdown-in converter test. (Günter Milde)

  • 2025-11-27 Save handling of unknown URI schemes in Markdown. (Günter Milde)

  • 2025-11-26 rST in: Fix subtitles. (Günter Milde)

  • 2025-11-25 Fix informal title, support rubric, sidebar, and topic. (Günter Milde)

  • 2025-10-01 Clarify naming in “rst_in” converter. (Günter Milde)

  • 2025-11-25 Saving user settings: avoid displaying the same flash message multiple times (Roland Rüdenauer)

  • 2025-11-25 common.js: no page reload if the backend reports back errors in saving user settings (Roland Rüdenauer)

  • 2025-11-25 Sort and document meaning of constants.misc.URI_SCHEMES. (Günter Milde)

  • 2025-11-25 rST docs: small fixes, update help-en/rst. (Günter Milde)

  • 2025-11-25 rST docs: Refactor “Hyperlinks” section. (Günter Milde)

  • 2025-11-25 rST docs: Update table documentation. (Günter Milde)

  • 2025-11-21 rST docs: Update Transitions (Thematic Breaks) and Backslash Escapes. (Günter Milde)

  • 2025-11-19 rST docs: Examples for custom interpreted text roles. (Günter Milde)

  • 2025-11-18 rST docs: Examples for all “admonition” types. (Günter Milde)

  • 2025-11-17 rST docs: Update list documentation. (Günter Milde)

  • 2025-11-17 rST doc fixups. (Günter Milde)

  • 2025-11-24 add timezone_default to config/wikiconfig.py; fixes #1887 (RogerHaase)

  • 2025-11-23 Use new utils methods to detect change in the tags of a wiki item. (Roland Rüdenauer)

  • 2025-11-23 Detect a change in the names of an item when checking for changed metadata. (Roland Rüdenauer)

  • 2025-11-20 Replace unmaintained passlib with argon2-cffi (Thomas Waldmann)

  • 2025-11-20 fix crash on any python >= 3.12 due to missing pkg_resources (Thomas Waldmann)

  • 2025-11-18 Bandit check in CI workflow: raise codeql-action to v4 (UlrichB22)

  • 2025-11-18 Fix crash caused by use of unbound local variables (Roland Rüdenauer)

  • 2025-11-18 CSS styles: use literal em-dash for rST quote attribution. (Günter Milde)

  • 2025-11-17 Move development docs to “development” chapter fixes #906 (RogerHaase)

  • 2025-11-12 Apply changes to the metadata validation functions (Roland Rüdenauer)

  • 2025-11-11 Convert validation functions into Validator classes (don’t change the actual validation code) (Roland Rüdenauer)

  • 2025-11-11 test_indexing: add comment on possible problem with mtime resultion (Roland Rüdenauer)

  • 2025-11-11 test_protecting: add missing charset when storing xml document (Roland Rüdenauer)

  • 2025-11-11 Update indexing test cases (Roland Rüdenauer)

  • 2025-11-10 store_revision: always use strict validation (Roland Rüdenauer)

  • 2025-11-10 store_revision: add missing validation of new item metadata (Roland Rüdenauer)

  • 2025-11-16 update development.rst, remove virtualenv, add sass workaround, etc. (RogerHaase)

  • 2025-11-08 rST in: Support “classes” attribute and “custom interpreted text roles”. (Günter Milde)

  • 2025-11-10 store_revision: make sure we get a new timestamp for untrusted item changes (Roland Rüdenauer)

  • 2025-11-10 Improve readability of indexing middleware (Roland Rüdenauer)

  • 2025-11-10 moin.storage: add more type hints (Roland Rüdenauer)

  • 2025-11-10 pytest: ignore folder _ui_tests (Roland Rüdenauer)

  • 2025-11-09 Update “theme.css” of the basic theme after generating CSS files using sass. (Roland Rüdenauer)

  • 2025-11-09 Revert the basic theme CSS and add a “float-right” style to the download button in the template file modify.html instead. (Roland Rüdenauer)

  • 2025-11-09 Remove the basic theme CSS source map file. (Roland Rüdenauer)

  • 2025-11-09 Workaround for bug in Sphinx LaTeX writer (Günter Milde)

  • 2025-11-09 CI: try to build the docs, fixes #2039 (Thomas Waldmann)

  • 2025-11-09 changes: fix rst syntax (Thomas Waldmann)

  • 2025-10-31 Improve existing test code (Roland Rüdenauer)

  • 2025-11-07 Fix issue 2031: ‘Config’ object has no attribute ‘pkg’ (Roland Rüdenauer)

  • 2025-11-07 fix authorship (Thomas Waldmann)

  • 2025-11-07 CHANGES: fix typos and grammar (Thomas Waldmann)

Version 2.0.0b4 2025-11-07

This is an unstable beta release and is not suitable for a production wiki. Test carefully and report new issues and feature requests on the issue tracker: https://github.com/moinwiki/moin/issues

After installing this release as an upgrade on an existing Moin 2 wiki, be sure to:

  • Copy or merge src/moin/config/wikiconfig.py into the root-level wikiconfig.py.

  • Rebuild the Whoosh indexes:

    • moin index-destroy

    • moin index-create

    • moin index-build

Fixes

  • 2025-11-07 Replace table style attributes in help-en to avoid CSP warnings (UlrichB22)

  • 2025-11-06 Update docs/changes/CHANGES for 2.0.0b4 release (RogerHaase)

  • 2025-11-06 rST in: Handle <problematic> elements. (Günter Milde)

  • 2025-11-05 rST in: activate default “transforms”. (Günter Milde)

  • 2025-11-05 rST in: More informative system messages. (Günter Milde)

  • 2025-11-05 rST in: support ordered lists with custom start value. (Günter Milde)

  • 2025-11-04 rST in: support custom “text roles”. (Günter Milde)

  • 2025-11-04 Feature: Add dark theme as per system settings (UlrichB22)

  • 2025-11-02 rST documentation: do not link to nonexistent item. (Günter Milde)

  • 2025-11-01 rST in: Fix non-section titles (Günter Milde)

  • 2025-11-01 Replace white_clouds with gray background (UlrichB22)

  • 2025-10-30 Add test case for user login POST request (Roland Rüdenauer)

  • 2025-10-28 Add test case for page modification with preview (POST request) (Roland Rüdenauer)

  • 2025-10-29 rST in: Keep leading slash in wiki-local references (Günter Milde)

  • 2025-10-28 Set wikiconfig_dir and instance_dir in wikiconfig.py used for testing (Roland Rüdenauer)

  • 2025-10-28 Remove workarounds in test code dealing with Werkzeug versions < 3.0.0 (Roland Rüdenauer)

  • 2025-10-23 Add support for Python 3.14 (Roland Rüdenauer)

  • 2025-10-23 Remove support for Python 3.9 (Roland Rüdenauer)

  • 2025-06-02 Synchronize rST parser documentation files (Günter Milde)

  • 2025-10-11 Improve moin_dir setting to fix tox tests (UlrichB22)

  • 2025-10-01 Fix handling of target elements in rST; fixes #1680 (Günter Milde)

  • 2025-10-09 Add Swedish translation (Daniel Nylander)

  • 2025-10-07 Pass variable ‘subitem_target’ instead of ‘item_name’ into search templates (Roland Rüdenauer)

  • 2025-10-07 Fix code and Jinja templates accessing the no longer existing wiki configuration setting ‘item_root’ (Roland Rüdenauer)

  • 2025-10-05 Remove unused methods (Protected)Revision.set_context (Roland Rüdenauer)

  • 2025-04-25 Set item_type and rev_number for userprofile items (Roland Rüdenauer)

  • 2025-10-01 Change get_document to a method of IndexingMiddleware (UlrichB22)

  • 2025-10-01 Rename get_doc to get_document and other code improvements (UlrichB22)

  • 2025-10-01 rST converter: Fix handling of internal cross-references (Günter Milde)

  • 2025-10-01 Add test cases for hyperlinks to sections in reStructuredText (Günter Milde)

  • 2025-09-28 Babel: Move config to pyproject.toml (Thomas Waldmann)

  • 2025-09-27 Rename and rework get_indexer function (UlrichB22)

  • 2025-09-24 Modify form: Make loading content from file upload work (Roland Rüdenauer)

  • 2025-09-24 Basic theme fixes - Show “Load Draft” button on modify form if a draft is available (Roland Rüdenauer)

  • 2025-09-23 Fix help-en meta using maint-validate-metadata (UlrichB22)

  • 2025-09-23 Fix unexpected keyword argument ‘fqname’ when running +feed/atom; fixes #1990 (RogerHaase)

  • 2025-09-12 Remove inline styles from Basic theme #1816 (RogerHaase)

  • 2025-09-11 Improve User Accounts documentation (RogerHaase)

  • 2025-09-11 mediawiki.rst: Fix table markup (Thomas Waldmann)

  • 2025-09-10 Correct CSP report log path used in before_wiki (add leading slash) (Roland Rüdenauer)

  • 2025-09-05 “Moin Wiki” -> “MoinWiki” when referring to markup type (Thomas Waldmann)

  • 2025-09-05 search.rst: Fix table markup/width (Thomas Waldmann)

  • 2025-09-05 index.rst: Re-add bold, remove mm2 (Thomas Waldmann)

  • 2025-09-05 Docs: Fix typos and grammar (Junie AI)

  • 2025-09-03 Remove inline styles from index.html and forms.html #1816 (RogerHaase)

  • 2025-09-01 Fix invalid escape sequence ‘‘ (Thomas Waldmann)

  • 2025-08-29 Fix typos and grammar (Thomas Waldmann)

  • 2025-08-29 Bandit: Exclude scripts/ and contrib/loadtesting/ (Thomas Waldmann)

  • 2025-08-19 Fix CSP warning on items containing TOC macro; fixes #1976 (RogerHaase)

  • 2025-07-20 Support Python 3.13 (Thomas Waldmann)

  • 2025-08-17 HTML error on TitleIndex macro; fixes #1979 (RogerHaase)

  • 2025-08-13 Suppress printing of slideshow start button (UlrichB22)

  • 2025-08-12 Add buffer reset to Whoosh BufferFile.close (UlrichB22)

  • 2025-08-11 Add custom.css feature (UlrichB22)

  • 2025-08-07 get_open_wiki_files: Add file mode to output for debugging (UlrichB22)

  • 2025-08-04 Fix search not supporting namespaces; fixes #1907 (RogerHaase)

  • 2025-08-04 Fix load draft in focus theme (Christoph Klassen)

  • 2025-08-04 Fix empty lines in diff in focus theme (Christoph Klassen)

  • 2025-07-30 Log only invalid metadata properties (Roland Rüdenauer)

  • 2025-07-30 Fix logging of invalid element (empty log output before) (Roland Rüdenauer)

  • 2025-07-13 Metadata revision already set in MutableBackend._store_meta (Roland Rüdenauer)

  • 2025-07-28 test_indexing.py: Fix code dumping items (Roland Rüdenauer)

  • 2025-07-25 Configuration option for markdown extensions (Sebastian Wagner)

  • 2025-07-20 Use SPDX license metadata in pyproject.toml (Thomas Waldmann)

  • 2025-07-13 Make use of metadata key constants (Roland Rüdenauer)

  • 2025-07-13 Raise the year of copyright for RTD (UlrichB22)

  • 2025-07-02 Fix failing test cases (Roland Rüdenauer)

  • 2025-07-02 Fix errors caused by importing ‘override’ (Roland Rüdenauer)

  • 2025-07-02 Replace use of Python 3.12 ‘type’ statement with PEP 613 TypeAlias declaration (Roland Rüdenauer)

  • 2025-06-02 Add more type hints (Roland Rüdenauer)

  • 2025-07-01 WikiLinkAnalyzer: Allow colon in wiki.local page name (Roland Rüdenauer)

  • 2025-05-13 Fix issue #1874: Correct handling of wiki item links (Roland Rüdenauer)

  • 2025-06-20 Moinwiki converter: Add additional test cases (Roland Rüdenauer)

  • 2025-06-20 Moinwiki converter: Pop top of stack for closing strikethrough character sequence (Roland Rüdenauer)

  • 2025-06-20 Moinwiki converter: Make definition lists have lowest precedence in indent_re (Roland Rüdenauer)

  • 2025-06-18 Prevent IndexError in search when wiki contains deleted items #1885 (RogerHaase)

  • 2025-06-15 Update favicon.ico (Roland Rüdenauer)

  • 2025-06-15 Update docs for searching an item’s subitems #1885 (RogerHaase)

  • 2025-06-15 Topside: Fix footer width on small screen (UlrichB22)

  • 2025-06-14 Remove show.html template from theme ‘focus’ (UlrichB22)

  • 2025-06-13 Fix error in test_views.py #1885 (RogerHaase)

  • 2025-06-11 Change focus theme layout.html to load main.js after other scripts (RogerHaase)

  • 2025-06-06 Move slideshow inline JS script to a separate file (UlrichB22)

  • 2025-06-05 Remove leftover class definition from rST converter (Günter Milde)

  • 2025-06-04 Remove inline styles and onclick from item_acl_report.html #1816 (RogerHaase)

  • 2025-04-05 Convert Basic theme from Bootstrap 3 to Bootstrap 4 and use Sass instead of lessc (fixes #1770) (Roland Rüdenauer)

  • 2025-06-02 Use member ‘cfg’ of class ThemeSupport consistently instead of taking it from the Flask application context (Roland Rüdenauer)

  • 2025-05-28 Fix extraction of open document format files for indexing (UlrichB22)

  • 2025-05-27 Re-enable “Wiki links” (Günter Milde)

  • 2025-05-27 Set default for EDIT_ON_DOUBLECLICK to False (UlrichB22)

  • 2025-05-26 Skip before_wiki and teardown_wiki for content in _themes (UlrichB22)

  • 2025-05-26 Move ‘user.may.destroy’ call from template to views.py (UlrichB22)

  • 2025-05-26 Improve focus theme layout (especially on mobile) (Christoph Klassen)

  • 2025-05-26 Improve focus theme consistency between tables (Christoph Klassen)

  • 2025-05-26 Add focus theme missing changes from templates (Christoph Klassen)

  • 2025-05-26 Remove focus theme font for better performance (Christoph Klassen)

  • 2025-05-24 Update pyproject.toml Development Status to 4 - Beta (RogerHaase)

  • 2025-05-24 Add icon for +admin/user and some fault tolerance (UlrichB22)

  • 2025-05-23 Switch to native pyproject tox configuration (Roland Rüdenauer)

New features

  • Add support for Python 3.13 and 3.14; remove support for Python 3.9

  • Add Swedish translation

Version 2.0.0b3 2025-05-24

This is an unstable beta release not suitable for a production wiki, test carefully and report new issues and feature requests on the issue tracker: https://github.com/moinwiki/moin/issues.

After installing this release as a upgrade on an existing moin2 wiki be sure to:

  • copy or merge src/moin/config/wikiconfig.py into the root version of wikiconfig.py.

  • rebuild the Whoosh indexes

    • moin index-destroy

    • moin index-create

    • moin index-build

Fixes

  • Fix duplicate namespace in discussion link (#1847)

  • updated docs for package releases

  • Add FullSearch macro migration for moin1.9 categories

  • markupsafe was pinned to <= 2.2.0, change to >= 3.0.2

  • Fix handling of namespace root items in +misc/sitemap

  • Fix download link for binary content (missing namespace)

  • Localize download link text

  • add “pre-commit run” to development.rst docs

  • Fix undefined name ‘revs’ in diff view

  • Fix dump-html: remove item id of links to binary data (#1742)

  • remove exists check from itemviews template to improve performance

  • User settings: support setting the theme name to ‘system default’ (#1532)

  • Document use of THEME_PATHS in moin wiki

  • Remove WIKINAME from schema and queries

  • Improve the check in get_open_wiki_files()

  • User settings: fix handling of flash messages (#1872)

  • ajaxsearch: add check whether content exists

  • bandit configuration: exclude ui tests

  • docs: improve logging configuration docs with MOINLOGGINGCONF and debug example

  • docs: convert logging section titles to headings for Read the Docs navigation

  • Make use of Referrer request header value (if available) when redirecting from subscribe (#1841)

  • Replace text “Highlight” with “Markup” (#1860)

  • Fix index out range error (list with validation errors might be empty)

  • Escape html content placed into <pre> section (avoid running again into the same error)

  • Fix IndexError in markdown converter (triggered by mismatching tags in html content)

  • Make getInterwikiHome() return a fqname

  • search query: add some more clickable options, fixes #60

  • sanitize Markup() input and ignore bandit B704

  • adapt wsgi bench script

  • Simplify packaging of moin by removing useless or misleading packaging instructions

  • Render item metadata as a table

  • Add table header to metadata view

  • Metadata view: remove the ugly quotes around some values

  • Metadata view: remove the colons in column ‘Keys’

  • Execute wiki creation in it’s own app context

  • wikiconfig.py: Add comment on deactivation of discussion feature

  • .gitignore: mark some files as not to be ignored

  • run black on src/moin/_tests/wikiconfig.py

  • Fix build of query in tagged_items() if namespace is ‘all’

  • Refactoring of 3rd index code, rename index, add handling of missing indexes

  • Move code to determine xstatic module paths from wikiconfig.py to moin.utils

  • Persist view state (expanded/collapsed) of sidebar elements in browser local storage

  • Improve print layout for focus theme

  • pin xstatic packages to legacy versions

  • Set email_tracebacks to false in the wikiconfig.py used for test execution.

  • Catch AttributeError in EmailHandler.emit()

  • Add type hints

  • Replace ugly static moin png with prettier one from help-common

  • IriPath improvements: better argument type checking and add test case for argument of type str

  • Fix ConverterBase.absolute_path: return an instance of IriPath

  • Focus: fix itemview icons, remove globe-rotate-left-solid, add login icon

  • Replace magnifying-glass-solid with free version

New features

  • added new theme ‘focus’

Version 2.0.0b2 2025-03-01

This is an unstable beta release not suitable for a production wiki, test carefully and report new issues and feature requests on the issue tracker: https://github.com/moinwiki/moin/issues.

Fixes

  • updated docs for Python 3.12 pkg_resources workaround

  • add docs and key control to SlideShow macro

  • removed spam links in contrib/intermap.txt

  • fixed bug when creating list of dirs returned by make_flat_index

  • ignore empty table attributes within moinwiki_in converter

  • fix “moin dump-html” to dump raw data for pdf, tar, and other items

  • fix “moin import19” to migrate links only if target namespace is specified

  • SlideShow macro uses url_for

  • improve footer layout

  • fix CSS for Show Wiki Configuration

  • moin import19 handles namespace attachments

  • restrict all admin views to superuser, partially backed off

  • remove ACL form help-en/TemplateSample

  • add request.path to clock total timer message

  • skip before_wiki and teardown_wiki for static content

  • ignore closing stroke tag if no opening tag found within moinwiki_in converter

  • change position and order of Submit buttons

  • remove “General meta” from modify view

  • set url_map.strict_slashes to False

  • creating items now uses current namespace ACL

  • stricter detection of embedded markup on markdown_in converter

  • fix convert_to_indexable for items in a namespace

  • fix delete/destroy from index view

  • fix several namespace bugs where wrong item names were used

  • bump Xstatic_Bootstrap to 4.5.3.1 fixing potential XSS attacks

  • add tag parameter to ItemList macro

  • wikiconfig.py configuration PERMANENT_SESSION_LIFETIME requres datetime import

  • eliminate traceback when destroying a deleted item

  • highlight search results: treat each word separately and ignore case

  • move ‘user.may.write’ call from template to views.py

  • fix traceback: add may permission in _do_modify_show_templates

  • deactivate exists checks for page trail and do not show non-existent items

  • performance: add aliases to trail and remove exists check

  • import19: Add procs and limitmb options to increase performance

  • import19: add exception handling for drop_and_recreate_index

  • add missing attribute ‘may’ to diff.html template

  • import19: add option latest-rev-only

  • _args_wiki parse: ignore keys with empty value

  • support different storage types for each namespace

  • import19: add missing parents

  • update intermap.txt removing dead links, spam; change to https when possible

  • performance: _get_acls: use meta data if available to avoid index query

  • fix traceback when viewing item with @itemid

  • update development docs with more info about “pre-commit install”

  • page_trail: add type checks

  • fix search result highlighting for itemlist macro

  • fix itemlist arguments in help-en/MoinWikiMacros

  • itemList: use _args_wiki parser

  • same messages for not found and access denied

  • itemList performance: mv regex handling to search_meta

  • update, cleanup translations, add few German translations

  • remove subprocess call from create_instance

  • remove smb_mount module and docs

  • add usedforsecurity False in hash functions

  • rework of the send_file exception handling

  • remove obsolete SubProcess.py

  • send_file: seek to the beginning of the file in any case

  • use new gravatar hash routine

  • remove obsolete profile.py

  • fix UnboundLocalError in import19

  • show blank page after passwort reset

  • remove sistersite feature.

  • do not show USERPROFILES ns within a list of selectable namespaces

  • add pre-commit for bandit security scan, add to github workflow

  • add CSP header and receiver

  • correct hit count display when ajax search options use whoosh filters

  • fix CSP warning, remove inline style on moin-options-for-javascript

  • rename and update README, add CONTRIBUTING.md

New features

  • Add RandomQuote macro

Version 2.0.0b1 2024-08-07

This is an unstable beta release not suitable for a production wiki, test carefully and report new issues and feature requests on the issue tracker: https://github.com/moinwiki/moin/issues.

Fixes

  • added config option to enable or disable contenttypes

  • mass source code changes using pyupgrade to upgrade syntax to 3.9

  • removed unused imports

  • create SECURITY.md

  • update .readthedocs.yaml to generate readthedocs content using Python 3.10

  • remove use of obsolete setuptools

  • change use of whoosh lru cache to lfu cache

  • update Flask and Werkzeug to >=3.0.0

  • upgrade feedgen (atom feed lib) to >= 1.0.0

  • removed parentid to fix welcome/users_home_meta

  • mass source code changes after integrating “black” code auto-formater

  • supress false “unused import” when importing flatland.Form

  • replace deprecated datetime.utc* calls

  • add language auto-detect to user personal settings

  • readthedocs now has access to docs/examples

  • fix maint-validate-metadata to skip userprofiles backend

  • Add REV_NUMBER in sort for history view replacing mtime

  • Fix CI workflow to test with all supported python versions, run py39 with Ubuntu 22.04

  • add support for SQLAlchemy >=2.0.0

  • macros with user editing errors should not fill log with tracebacks

  • cleanup redundant icon directories

  • add itemlinks validator replacing wikilinks validator where needed

  • itemlinks beginning with + were incorrectly given non-existent class (+meta/Home)

  • remove trailing /> from void elements to comply with W3C standard

  • add validity check if user changes name/alias/display-name in UserSettings>Personal

  • add test to prove icons from CSS URLs is a subset of files in icon dir

  • add RSS link to global history

  • fix search-options font and fix HTML validation errors

  • update and add German translations

New features

  • add slideshow macro and view

Version 2.0.0a1 2024-03-27

This is an unstable alpha release not suitable for a production wiki, test carefully and report new issues and feature requests on the issue tracker: https://github.com/moinwiki/moin/issues.

Fixes

  • Major rewrite of MoinMoin 1.9.x

New features

  • Python3.9+

  • Supports moinwiki, markdown, rst, and DocBook markup languages

  • HTML markup support by CKEditor, same version used in moin 1.9.x

  • MediaWiki markup support needs work

  • Editor help docs optional, can be loaded into a wiki namespace

  • New/revised themes: topside, topside-cms, modernized, basic

  • EmeraldTree

  • Flask

  • Flatland

  • FontAwesome

  • Jinja2

  • Jquery

  • Whoosh

  • Xstatic

Missing features from 1.9.x

  • SVG editor

  • LDAP may have missing dependencies depending upon OS flavor

  • WikiDicts have limited function, does not use Babel translations

  • language support limited to English, German, Portuguese (Brasil), Russian

  • some macros have not been converted

  • no contributed themes

  • no contributed macros

Other changes