Story
Decoupling core, I want to get rid of using deprecated LanguageConverter related methods from Language class before releasing 1.35 to have possibility hard-deprecate them and remove them from Language class after 1.35 is released.
Context
LanguageConverter, the class that in charge of converting text between Variants was introduced a while ago, but the use of the deprecated method like:
- ::getVariants();
- ::getVariantFallbacks( $variant );
- ::getConvRuleTitle();
- ::getPreferredVariant();
- ::getDefaultVariant();
- ::validateVariant( $variant = null );
- ::getURLVariant();
- ::autoConvert( $text, $toVariant = false );
- ::translate( $text, $variant );
- ::autoConvertToAllVariants( $text );
- ::convertTitle( LinkTarget $linkTarget );
- ::convertNamespace( $index, $variant = null );
- ::convert( $text );
- ::convertTo( $text, $variant );
- ::findVariantLink( &$link, &$nt, $ignoreOtherCond = false );
- ::getExtraHashOptions();
- ::guessVariant( $text, $variant );
- ::markNoConversion( $text, $noParse = false );
- ::convertCategoryKey( $key );
- ::updateConversionTable( LinkTarget $linkTarget );
- ::hasVariants();
- ::hasVariant( $variant );
- ::convertHtml( $text );
are still widely spread across the core and extensions.
Below is the link to the original research:
https://docs.google.com/spreadsheets/d/1LXRYn1ThHRlFfdiyrAns2GlyHG0dzyv4kxyafVe4vSM/edit#gid=0
Already NOT in the "Language" class:
::getVariantFallbacks( $variant );
::validateVariant( $variant = null );
::translate( $text, $variant );
::convertTo( $text, $variant );
::guessVariant( $text, $variant );
::markNoConversion( $text, $noParse = false );
Expected result:
- Methods from list above should be call from LanguageConverter class.
- Methods from the list above should be hard-deprecated for Language class