Core Platform Team/Initiatives/EditPage

From mediawiki.org

Initiative Vision

< Initiatives

Vision:
  • MediaWiki has an edit controller that can be used with different edit views for different content models.
  • MediaWiki supports editing of non-textual content models defined by extensions.
  •  
Stakeholder(s):
  • MediaWiki developers (core and extensions) will benefit from clearer, more testable code
  • Quality + test engineering may be interested since we are making code more testable by removing coupling.
  • The editing team should be consulted to see if they have wishes for the new system that go beyond re-implementing current behavior in a MVC way.
Problem:
  • EditPage is a huge class with unclear information flow that bundles controller logic with view code.
  • EditPage is not testable in a straight forward and consistent way.
  • APIs currently simulate web requests in order to re-use the controller part of EditPage.
Solution:
  • Refactor EditPage to allow different frontends (view) for different kinds of context.
  • Extract the controller part of EditPage so it can be re-used easily by API modules/endpoints.
  •  
Aligned Goals:
  • Improve code quality by reducing coupling
  • Improve code health by improving testability
  • Improve maintainability by modeling domain concepts clearly
Success Metrics:
  •  
  •  
  •  



Subpages