Page MenuHomePhabricator

Fix implicit "XMLWriter" requirement when loading lint sinks
Closed, ResolvedPublic

Description

See PHI1634.

  • In D20986, the "LintRenderer" classes swapped to a modern modular pattern.
  • This invokes all of their constructors as a side effect.
  • The ArcanistCheckstyleXMLLintRenderer linter is written in an un-modern way and causes significant side effects during construction, notably failing if the XML extension which provides XMLWriter is not installed.

Instead:

  • ArcanistCheckstyleXMLLintRenderer should not instantiate XMLWriter on construction.
  • If the xml extension is not available, ArcanistCheckstyleXMLLintRenderer should fail more clearly/gracefully.