Base language features

Drupal 7 did not differentiate base language features from interface translation and in many cases content language assignment and config translation. The plan for Drupal 8 is to have a dedicated language.module as well as APIs that support working with the base language system. Major parts of this include:

  • Introduction of language.module (to include language listing/configuration and negotiation)
  • Simplification of language configuration to make it easier to use
  • APIs for language like language_save(), language_load(), etc. as well as their corresponding hooks
  • Standardize and document negotiation APIs
  • Move language as the first step of the installer
  • Standardize on 'langcode' for language codes in the API and schema

Language awareness (assignment) is moving to the respective modules, so for example node module can take language in itself when language functionality is enabled.

Legend:
Critical issue
Major issue
Current top priority

Currently in the works for Drupal 8

See all these issues also at https://drupal.org/project/issues/search/drupal?issue_tags=language-base%2C+D8MI&issue_tags_op=all+of. This view of issues is automatically cached and might be out of date up to two hours at times.

To do

#2462279: Language prefix for custom menu link paths are saved but not used
8.3.x-devbug reportMajorneeds worksprintmediumDevDaysMilan
#1137074: Make obtaining language-aware URLs less painful
8.4.x-devtaskMajoractiveneeds issue summary updateAPI addition
#2166879: Clean-up code managing language type configurability
8.4.x-devtaskMajoractiveDX (Developer Experience)
#2174619: Make language negotiation plugins stateless
8.4.x-devtaskMajorneeds workAPI changeDX (Developer Experience)
#2232375: Make language switcher block cacheable
8.3.x-devtaskMajorneeds workD8 cacheabilityPerformanceD8 Accelerate Dev Daysdrupaldevdays
#2430335: Browser language detection is not cache aware
8.4.x-devbug reportMajorneeds workPerformanceD8 cacheability
#197641: Drag and drop is not RTL aware
8.3.x-devbug reportNormalactiveRTL
#540228: Implement a UTF8-safe wordwrap()
bug reportNormalneeds workneeds backport to D6needs backport to D7Needs tests
#925474: Improve table structure for {url_alias} #2
8.3.x-devbug reportNormalneeds workneeds backport to D7multilinguali18n
#1294946: Language detection based on session doesn't work with URL aliases
8.3.x-devbug reportNormalneeds workneeds backport to D7negotiation
#1337628: Enhance language select form with textbox and other tools
8.3.x-devtaskNormalneeds workJavaScriptUsability
#1882712: Language admin form: move top-level language properties to table form row
8.3.x-devtaskNormalneeds workneeds issue summary update
Assigned to ti2m
#1941732: Language code (Uppercase for the region ?)
8.3.x-devfeature requestNormalactive
#2019511: Explain why the language switcher would not show under some configurations
8.3.x-devtaskNormalneeds workUsabilitynegotiationdrupaldevdaysSprintWeekend2015
#2174611: Reconsider language system class, method and constant names to make them more developer-friendly
8.4.x-devtaskNormalneeds workAPI changeDX (Developer Experience)
Assigned to sun
#2174615: Benchmark/profile PathProcessorLanguage
8.3.x-devtaskNormalactivePerformance
#2239497: [Meta] Fix ConfigurableLanguageManager getLanguages()
8.3.x-devbug reportNormalneeds workneeds issue summary update
#2247497: Clean up overriden Entity/Language::get()
8.3.x-devtaskNormalneeds work
Assigned to alexpott
#2533254: LanguageInterface lacks @ingroup i18n
8.3.x-devbug reportNormalneeds work
#2659630: Field type descriptions are hard to translate
8.4.x-devbug reportNormalactiveSprintWeekend2016SprintWeekendBerlin
#2824443: Update the key for Simple English
8.4.x-devtaskNormalneeds workUsabilitysimple english

To review

#2500607: Some block categories are not translatable
8.4.x-devbug reportNormalneeds reviewUsabilitysprintBaltimore2017
#2413191: Shipping a profile with multiple languages without locale module not possible
8.3.x-devbug reportMajorneeds reviewtranslationmediumNeeds tests
#2492171: Use new Transliteration functionality in core for file names
8.4.x-devtaskMajorneeds reviewNeeds testsNeeds change record
#2643466: Use TrustedRedirectResponse Error on Multilingual Setup
8.3.x-devbug reportMajorneeds reviewNeeds testsTriaged for D8 major current stateFLDC17Triaged D8 majorNeeds DocumentationNeeds change record
#2359331: [Meta] Add missing RTL rules in core CSS files.
8.3.x-devbug reportNormalneeds reviewRTLCSSfrontend

To be committed

(None)
Legend:
Critical issue
Major issue
Current top priority

Other related issues

See all these issues also at https://drupal.org/project/issues/search/drupal?issue_tags=language-base%2C+D8MI&issue_tags_op=all+of. This view of issues is automatically cached and might be out of date up to two hours at times.

Backport

#1250800: Language domain should work regardless of ports or protocols
7.x-devbug reportCriticalclosed (fixed)negotiation
#221712: locale_language_from_browser() doesn't parse language tags correctly, has a broken logic
6.x-devbug reportNormalClosed (outdated)needs backport to D7negotiationneeds backport to D6
#381994: Machine-name fields are always in Latin characters, and should therefore always be LTR
6.x-devbug reportNormalClosed (outdated)RTLneeds backport to D6needs backport to D7
#673020: Tests for adding the Content-Language HTTP header to the generated page
7.x-devbug reportNormalclosed (fixed)
Assigned to Zoltán Balogh
#1156576: Language negotiation is undocumented
7.x-devbug reportNormalclosed (fixed)needs backport to D7negotiation
#1260752: Fix _locale_languages_common_controls maxlength to conform schema
7.x-devbug reportNormalclosed (fixed)needs backport to D7
#1314384: Remember the provider that selected the language for later use
7.x-devfeature requestNormalclosed (fixed)API additionneeds backport to D7negotiation
#1470080: Nothing in locale.api.php belongs there
7.x-devbug reportNormalclosed (fixed)Novice
#1499526: Remove Detection and Selection local task when a single language is enabled
7.x-devfeature requestNormalclosed (works as designed)negotiation
#1513520: locale_language_from_browser() incorrectly matches invalid strings
7.x-devbug reportNormalclosed (fixed)needs backport to D7
#1572394: Language detection by domain only works on port 80
6.x-devbug reportNormalClosed (outdated)7.15 release notes6.27 release notes
#1645156: URL generation only works on port 80 when using domain based language negotation
7.x-devbug reportNormalclosed (fixed)needs backport to D77.50 release notes
#1657886: Filter "Convert URLs into links" doesn't support multilingual web addresses
7.x-devbug reportNormalactiveNeeds testsneeds backport to D7IDN
#1826252: Domain language negotiation broken when a base url is configured
7.x-devbug reportNormalneeds workneeds issue summary updateNeeds manual testingneeds backport to D7
Assigned to vuzzbox
#1994292: LanguageInterface::TYPE_URL (D8) and LANGUAGE_TYPE_URL (D7) have no name or description
7.x-devbug reportNormalneeds reviewneeds backport to D7Needs manual testing

Postponed

#568986: Dynamically update standard language list from localization server
8.4.x-devtaskNormalpostponedUsabilitylocalized install
#1218650: Separate language and locale. Proper languages for content translation.
8.3.x-devfeature requestNormalpostponed (maintainer needs more info)
#1940590: META: Write a multipage multilingual tour
8.3.x-devtaskNormalpostponedD8UX usabilityTour
#2017473: Multilingual tour for user profile page
8.3.x-devtaskNormalpostponedNoviceD8UX usabilityTour
#2017477: Multilingual tour for content translation settings
8.3.x-devtaskNormalpostponedNeeds testsNoviceD8UX usabilityTour
#2017497: Multilingual tour for content translation process
8.3.x-devtaskNormalpostponedNeeds testsNoviceD8UX usabilityTour
#2017501: Multilingual tour for language switcher block
8.3.x-devtaskNormalpostponedNeeds testsD8UX usabilityTour
#2426399: FieldPluginBase::renderAsLink() loses language prefix for tokenized paths
8.3.x-devbug reportNormalpostponedVDC
Assigned to mpdonadio
#2462729: Move ConfigurableLanguage hook implementations in language module to the entity
8.3.x-devtaskNormalpostponeddrupaldevdaysD8 patch release targetminor version target
#2511052: (hreflang) tag is not in the HTML head
8.4.x-devbug reportNormalpostponed (maintainer needs more info)needs issue summary update

Closed

#2767025: Add entity type label for a collection of entities
8.4.x-devtaskNormalclosed (fixed)sprintWorkflow Initiative8.3.0 release notes
#1336170: Add locale module to upgrade tests
8.0.x-devtaskCriticalclosed (fixed)D8 upgrade pathlanguage-ui
Assigned to rvilar
#1827038: Remove stale references to language_content_type variable
8.0.x-devtaskCriticalclosed (fixed)Configuration systemlanguage-configSprintWeekend2013
Assigned to webchick
#1831846: Help block is broken with language path prefixes
8.0.x-devbug reportCriticalclosed (fixed)
#1862202: Objectify the language system
8.0.x-devtaskCriticalclosed (fixed)API changeAPI clean-upStalking CrellPHPUnit BlockerPlugin-conversionApproved API changebeta blocker
#1944636: PECL Intl extension usage in DateTimePlus class broken and untested
8.0.x-devbug reportCriticalclosed (fixed)datetimeConfiguration system
#2032033: Upgrade path tests broken when language module is enabled.
8.0.x-devbug reportCriticalclosed (fixed)Needs testsupgrade path
#2101661: Update cache checking logic in core/includes/langauge.inc to use config system
8.0.x-devbug reportCriticalclosed (fixed)Configuration system
#2108599: Convert language_default to CMI
8.0.x-devtaskCriticalclosed (fixed)Configuration systemlanguage-configSprintWeekend2014beta blocker
#2234623: Move language add logic out of language_save()
8.0.x-devbug reportCriticalclosed (fixed)impblockerbeta blocker
#2331991: Theme missing when installing in non-English language
8.0.x-devbug reportCriticalclosed (fixed)frontend
#2369225: Add $options['base_url'] to UrlGenerator::generateFromRoute()
8.0.x-devbug reportCriticalclosed (fixed)WSCCIblocker
#2495179: Twig placeholder filter should not map to raw filter
8.0.x-devbug reportCriticalclosed (fixed)TwigsecurityhardeningTriaged D8 critical
#2508654: File inclusion in transliteration service
8.0.x-devbug reportCriticalclosed (fixed)securityD8 Security BountyD8 Accelerate
#2616164: /update.php/run URL is generated with language prefix and returns 404 error
8.0.x-devbug reportCriticalclosed (fixed)Triaged D8 critical
#1164682: links with a known language need language identifier
8.0.x-devbug reportMajorclosed (fixed)PerformanceD8 cacheability
#1215716: Introduce locale_language_save()
8.0.x-devtaskMajorclosed (fixed)API changeAPI clean-up
#1301040: Move language listing functionality from locale.module to a new language.module
8.0.x-devtaskMajorclosed (fixed)API clean-up
Assigned to Gábor Hojtsy
#1357918: Missing update for language_default in language langcode update
8.0.x-devbug reportMajorclosed (fixed)API clean-uplangcode
#1833022: Only display interface language detection options to customize more granularity
8.0.x-devtaskMajorclosed (fixed)JavaScriptUsabilitynegotiationepicbudapest2012SprintWeekend2013RTBC July 1
#2018411: Figure out a nice DX when working with injected translation
8.0.x-devtaskMajorclosed (fixed)DX (Developer Experience)blocker
#2050097: Map CKEditor languages to Drupal languages
8.0.x-devtaskMajorclosed (fixed)SparkCKEditor in core
Assigned to Gábor Hojtsy
#2088371: YAML discovery incompatible with translations
8.0.x-devbug reportMajorclosed (duplicate)
#2139467: format_plural() does not add plural form after @count
8.0.x-devtaskMajorclosed (won't fix)
Assigned to andypost
#2166923: Move language entity (CR)UD API to a dedicated service
8.0.x-devtaskMajorclosed (duplicate)API changeNeeds reroll
#2251061: arg(0) returns path prefix with Language Path Negotiation enabled
8.0.x-devbug reportMajorclosed (works as designed)DrupalCampSpain
#2571375: Remove TranslationManager dependency from LanguageManager
8.0.x-devbug reportMajorclosed (fixed)rc eligible
#322995: Provide a distinct administration user interface language option
8.0.x-devfeature requestNormalclosed (fixed)Usabilitynegotiation
#533924: Allow different language types to be enabled separately
8.0.x-devfeature requestNormalclosed (duplicate)i18n sprinttranslatable fields
#555842: Remove Language Selection page when there is only one language present
8.0.x-devfeature requestNormalclosed (duplicate)Usabilityuser experience
#1216094: We call too many things 'language', clean that up
8.0.x-devtaskNormalclosed (fixed)API clean-upterminologylangcode
#1219196: Move negotiation settings out to their own include file
8.0.x-devtaskNormalclosed (works as designed)locale-splitnegotiation
#1222106: Unify language negotiation APIs, declutter terminology
8.0.x-devtaskNormalclosed (fixed)API clean-upnegotiation
#1222194: Rename global $language to $language_interface
8.0.x-devtaskNormalclosed (fixed)API clean-upnegotiation
#1231402: Drupal does not use ISO language codes, iso.inc is misleading
8.0.x-devtaskNormalclosed (fixed)UsabilityFramework Initiativehtml5API clean-up
#1232116: Language type constants are missing proper documentation
8.0.x-devbug reportNormalclosed (duplicate)needs backport to D7negotiation
#1234848: language_list() doc is missing return value
8.0.x-devbug reportNormalclosed (fixed)needs backport to D7
#1260510: Introduce a language_load($langcode)
8.0.x-devtaskNormalclosed (fixed)
#1260520: Apply language_save and language_load to the locale management UI
8.0.x-devtaskNormalclosed (duplicate)language-ui
Assigned to svendecabooter
#1260528: Introduce API to delete languages
8.0.x-devtaskNormalclosed (fixed)
Assigned to tarmstrong
#1260716: Improve language onboarding user experience
8.0.x-devtaskNormalclosed (fixed)UsabilityAPI changemontreallangcode
Assigned to Gábor Hojtsy
#1260860: Rework language list admin user interface
8.0.x-devtaskNormalclosed (fixed)Usabilitymontreal
#1260918: Convert language globals to contexts
8.0.x-devtaskNormalclosed (won't fix)WSCCImontrealnegotiation
Assigned to plach
#1265700: Little modernization of language_default()
8.0.x-devtaskNormalclosed (fixed)API clean-up
#1266318: Make English a first class language
8.0.x-devfeature requestNormalclosed (fixed)Usabilitymontreal
#1272840: Add upgrade path for language domains and validation
8.0.x-devtaskNormalclosed (fixed)Usabilitynegotiation
Assigned to pp
#1272862: Clean up default language handling
8.0.x-devtaskNormalclosed (duplicate)API clean-upneeds issue summary update
#1280524: Simplify/clarify language negotiation configuration workflow
8.0.x-devtaskNormalclosed (duplicate)Usabilitymontrealnegotiation
#1280530: Decouple domain/path negotiation setup from language configuration
8.0.x-devtaskNormalclosed (fixed)Usabilitymontrealnegotiation
Assigned to loganfsmyth
#1280550: Make default language easier to grok and configure in language negotiation
8.0.x-devtaskNormalclosed (fixed)Usabilitymontrealnegotiation
#1280600: Rename languages table to language
8.0.x-devtaskNormalclosed (duplicate)montreal
Assigned to lambic
#1280996: New language_select element type for form API
8.0.x-devtaskNormalclosed (fixed)DX (Developer Experience)montreal
Assigned to dawehner
#1293304: Break up locale.module, but how?
8.0.x-devtaskNormalclosed (fixed)Framework InitiativeIncreases learning curve
#1296566: Improve usability of add language screen
8.0.x-devtaskNormalclosed (fixed)Usability
#1301148: Stop pretending we have configuration translation for languages
8.0.x-devtaskNormalclosed (fixed)UsabilityAPI clean-uplanguage-config
#1387586: Rename drupal_multilingual() to language_multilingual()
8.0.x-devtaskNormalclosed (fixed)NoviceAPI changeAPI clean-up
#1387608: Unify language_list() and locale_language_list()
8.0.x-devtaskNormalclosed (fixed)API clean-up
#1416392: Clean up language (types) bootstrap function naming and documentation
8.0.x-devtaskNormalclosed (fixed)API clean-upnegotiation
#1471432: Rework language_list(), let people use more special languages
8.0.x-devtaskNormalclosed (fixed)
Assigned to aries
#1502816: Add help text explaining the limitations of language negotiation and page caching
8.0.x-devtaskNormalclosed (fixed)NovicenegotiationNeeds reroll
Assigned to joates
#1510686: Replace remaining references to global $language_interface with drupal_container()
8.0.x-devtaskNormalclosed (fixed)symfonyDependency Injection (DI)
Assigned to webflo
#1512308: Replace $language_content with Dependency Injection
8.0.x-devtaskNormalclosed (fixed)Dependency Injection (DI)
#1512310: Replace $language_url with Dependency Injection
8.0.x-devtaskNormalclosed (fixed)coding standardsDependency Injection (DI)
Assigned to jhodgdon
#1512424: Add a LanguageInterface, and property setters/getters to Language class
8.0.x-devtaskNormalclosed (fixed)Dependency Injection (DI)
#1519942: Decouple locale module from user module
8.0.x-devtaskNormalclosed (fixed)Framework Initiative
#1539072: Support for disabled languages broken, drop it
8.0.x-devbug reportNormalclosed (fixed)
#1539598: Modify update.php to use Dependency Injection for language
8.0.x-devbug reportNormalclosed (duplicate)Dependency Injection (DI)
#1539614: Modify language module to use Dependency Injection for language
8.0.x-devtaskMinorclosed (fixed)Dependency Injection (DI)
Assigned to vasi1186
#1550866: Remove obsolete drupal_language_initialize()
8.0.x-devtaskNormalclosed (fixed)Dependency Injection (DI)@deprecated
#1552236: Move user language tests to user module
8.0.x-devtaskNormalclosed (fixed)Novice
#1561004: Many tests still reference locale although they only need language module
8.0.x-devtaskNormalclosed (fixed)
Assigned to aspilicious
#1570346: Let Symfony Translation component handle language messages
8.0.x-devfeature requestNormalclosed (won't fix)
Assigned to clemens.tolboom
#1591928: Convert language tests to psr-0
8.0.x-devtaskNormalclosed (fixed)PSR-0
#1591950: Convert locale tests to PSR-0
8.0.x-devtaskNormalclosed (fixed)PSR-0
#1594226: Convert translation tests to PSR-0
8.0.x-devtaskNormalclosed (fixed)PSR-0
#1620010: Move LANGUAGE constants to the Language class
8.0.x-devtaskNormalclosed (fixed)Dependency Injection (DI)PHPUnit Blocker
#1631092: Remove language related todos and global variables from boostrap.inc
8.0.x-devtaskNormalclosed (fixed)Dependency Injection (DI)DI
#1632236: Convert built-in language list to CMI
8.0.x-devtaskNormalclosed (won't fix)Configuration system
#1634190: Long month names in locale.datepicker.js not using context properly
8.0.x-devbug reportNormalclosed (fixed)Novice
Assigned to LoMo
#1635134: Move date format translation functions from locale to system
8.0.x-devtaskNormalclosed (fixed)Novice
Assigned to hairqles
#1637710: Pass on language weight to language_locked_languages() when available
8.0.x-devbug reportNormalclosed (fixed)
Assigned to vasi1186
#1641166: Undefined property: Drupal\Core\Language\Language::$locked in language_list()
8.0.x-devbug reportNormalclosed (fixed)
Assigned to Schnitzel
#1649400: Make locked/special languages fully extensible
8.0.x-devtaskNormalclosed (fixed)
Assigned to vasi1186
#1751348: Convert locale settings to configuration system
8.0.x-devtaskNormalclosed (fixed)Configuration system
Assigned to tobiasb
#1754208: Convert hook_mail() and hook_mail_alter() to langcode
8.0.x-devtaskNormalclosed (fixed)DX (Developer Experience)langcode
Assigned to PrabhuG
#1776166: Improve default language negotiation
8.0.x-devfeature requestNormalclosed (fixed)
Assigned to Dries
#1777870: Catch up changelog.txt with recent languages changes
8.0.x-devtaskNormalclosed (fixed)
Assigned to rvilar
#1785966: Missing $language in update_mail()
8.0.x-devbug reportNormalclosed (fixed)Needs testsNovice
#1791920: Create new translations:// directory for tests
8.0.x-devbug reportNormalclosed (fixed)stream wrappersgettext
#1803638: Improve default language change process (ui and help text)
8.0.x-devtaskNormalclosed (fixed)Needs usability reviewmedium
#1833012: Move admin language negotiation up to first option
8.0.x-devtaskNormalclosed (fixed)UsabilityNovicedrupaldevdays
#1845034: Convert standard.inc to Drupal\Core\Language
8.0.x-devtaskNormalclosed (fixed)code cleanupFramework InitiativemediumPHPUnit Blocker
Assigned to Cameron Tod
#1869292: Remove confusing "multiple" language from core
8.0.x-devbug reportNormalclosed (fixed)Usabilitybudapest2012
#1869328: Restore simplicity of language list
8.0.x-devbug reportNormalclosed (fixed)JavaScriptUsabilityNeeds testsNovicebudapest2012
#1877338: Convert language admin form to new #type 'table'
8.0.x-devtaskNormalclosed (fixed)NoviceAPI clean-up#pnx-sprint
#1879732: Language-related modules not listed on available updates page
8.0.x-devbug reportNormalclosed (fixed)Needs tests
#1887582: update #type=table for language list
8.0.x-devtaskNormalclosed (duplicate)
#1946426: Convert all of confirm_form() in language.admin.inc to the new form interface
8.0.x-devtaskNormalclosed (fixed)API clean-upFormInterfaceWSCCI-conversionFormBase
#1974040: When installing in an RTL language, it should be RTL from profile selection onwards
8.0.x-devbug reportNormalclosed (fixed)frontendmedium
Assigned to alexpott
#1974044: "Account administration pages" detection method confusing
8.0.x-devbug reportNormalclosed (fixed)Quick fixNovice
#1974048: Limited display of languages when going back in installer is confusing
8.0.x-devbug reportNormalclosed (fixed)LONDON_2014_AUGUST
#1979392: Bartik layout broken in RTL
8.0.x-devbug reportNormalclosed (fixed)frontend
#1987728: Convert language_test_subrequest() to a new style controller
8.0.x-devtaskNormalclosed (fixed)WSCCI-conversion
#1987818: Convert system_date_format_language_overview_page() to a new style controller
8.0.x-devtaskNormalclosed (fixed)API changeAPI clean-upWSCCI-conversionRTBC July 1DdaySan2013-sprint
Assigned to MattDanger
#1993452: Fix confusing UX by merging "Translate configuration" into "Finish translations" task
8.0.x-devbug reportNormalclosed (fixed)installerAmsterdam2014Usability
#2003592: Convert language_admin_add_form and language_admin_edit_form to a Controllers
8.0.x-devtaskNormalclosed (fixed)JavaScriptNeeds manual testingAPI changeAPI clean-upFormInterfaceWSCCI-conversion
Assigned to Pancho
#2007632: Create multilingual install profile.
8.0.x-devtaskNormalclosed (works as designed)Needs usability reviewUsabilityinstallerlanguage-content
#2017471: Multilingual tour for language section
8.0.x-devtaskNormalclosed (fixed)NoviceD8UX usabilityTour
#2017475: Multilingual tour for interface translation section
8.0.x-devtaskNormalclosed (fixed)NoviceD8UX usabilityTour
#2020249: Create Drupal::languageManager for improved DX
8.0.x-devtaskNormalclosed (fixed)Quick fixWSSCI Conversion
#2033137: New installer sidebar not properly RTL
8.0.x-devbug reportNormalclosed (fixed)Novicefrontend
#2033959: Improve design of language detection and selection settings page
8.0.x-devtaskMinorclosed (fixed)UsabilityNeeds screenshotsie8frontendnegotiationmedium
#2033983: Improve code organization in LanguageNegotiator::updateConfiguration()
8.0.x-devbug reportMinorclosed (fixed)negotiationNovice
#2038291: Convert language_admin_add_form to a Controller
8.0.x-devtaskNormalclosed (duplicate)API changeAPI clean-up
Assigned to afeijo
#2061923: Remove calls to deprecated global $user in locale module
8.0.x-devtaskNormalclosed (fixed)CodeSprintCISblocked-by-request-scope
#2061929: Remove calls to deprecated global $user from language.module
8.0.x-devtaskNormalclosed (fixed)CodeSprintCISblocked-by-request-scope
#2069271: Bugos table column headers in language list
8.0.x-devbug reportNormalclosed (duplicate)Quick fixNovice
#2078511: Rename getLanguageDefault() to getDefaultLanguage()
8.0.x-devtaskNormalclosed (duplicate)Configuration systemlanguage-config
#2079797: Provide a trait for $this->t() and $this->formatPlural()
8.0.x-devtaskNormalclosed (fixed)DX (Developer Experience)Traits
#2082071: Convert language_negotiation_configure_browser_form to a Controller
8.0.x-devtaskNormalclosed (fixed)WSCCIFormInterfaceWSCCI-conversionApproved API change
#2085673: Remove all remaining "-rtl.css" references
8.0.x-devtaskNormalclosed (fixed)
Assigned to Wim Leers
#2086485: Convert language_negotiation_configure_form() to the new form interface
8.0.x-devtaskNormalclosed (fixed)WSCCIFormInterfaceWSCCI-conversion
Assigned to brianV
#2097217: Cannot add a new language with the overlay
8.0.x-devbug reportNormalclosed (cannot reproduce)JavaScriptoverlay
#2103039: Review hook_help for the language module
8.0.x-devtaskNormalclosed (fixed)NoviceNeeds manual testingDrupalCampSpain
#2107427: Regression: Language names should display in their native names in the language switcher block
8.0.x-devbug reportNormalclosed (fixed)regressionConfiguration contextSprintWeekend2014D8SVQ
#2119551: Add string context support to menu system
8.0.x-devtaskNormalclosed (duplicate)menu system
#2138133: Clean up maintainers.txt and changelog.txt for multilingual changes
8.0.x-devtaskNormalclosed (fixed)language-configlanguage-contentComponent maintainers
#2153937: Default language setting is hard to find
8.0.x-devbug reportNormalclosed (fixed)user experienceSprintWeekend2015SprintWeekend2015Queue
#2166915: Remove uses of deprecated language functions in tests and procedural code
8.0.x-devtaskNormalclosed (fixed)@deprecatedAPI clean-up
Assigned to ianthomas_uk
#2174535: Remove unused Langauge::extend
8.0.x-devbug reportNormalclosed (fixed)API changeQuick fix
#2174827: Remove language.detection.yml
8.0.x-devbug reportNormalclosed (fixed)Quick fix
#2182093: Fix documentation of Language::$defaultValues
8.0.x-devbug reportNormalclosed (fixed)language-configSprintWeekend2014
Assigned to ThisIsDog
#2194807: Remove obsolete CSS for language admin form
8.0.x-devtaskNormalclosed (fixed)frontendNovice
#2195573: Add a dedicated @LanguageNegotiation annotation class
8.0.x-devtaskNormalclosed (fixed)Plugin systemAnnotationdrupaldevdays
#2214057: Remove obsolete LanguageManagerInterface::init() method
8.0.x-devtaskNormalclosed (fixed)Dependency Injection (DI)@deprecatedNovice
Assigned to g3r4
#2216541: Fill in topic/@defgroup docs for Internationalization overview
8.0.x-devtaskNormalclosed (fixed)beta target
Assigned to jhodgdon
#2225427: Remove remaining uses of deprecated language functions (mostly in object oriented code)
8.0.x-devtaskNormalclosed (fixed)@deprecatedAPI clean-upSprintWeekend2015SprintWeekend2015Queue
#2239399: Languages should be sorted by label instead of title
8.0.x-devbug reportNormalclosed (duplicate)blockerLONDON_2014_MAYNeeds tests
#2239407: Language manager interface should not specify implementation details for getLanguages on the interface
8.0.x-devbug reportNormalclosed (fixed)regressionmediumSprintWeekend2014D8SVQ
#2240463: Fix text: languages are not "enabled/disabled" anymore, they are added/removed
8.0.x-devbug reportNormalclosed (fixed)Novice
Assigned to holly.ross.drupal
#2246665: Typehint with Drupal\Core\Language\LanguageInterface instead Drupal\Core\Language\Language
8.0.x-devtaskNormalclosed (fixed)DX (Developer Experience)API change
#2246679: Make Language module's LanguageInterface (to be ConfigurableLanguageInterface) extend Core's LanguageInterface
8.0.x-devtaskNormalclosed (fixed)DX (Developer Experience)API changeTCDrupal 2014LONDON_2014_AUGUST
#2271421: Rename Language module's Language to ConfigurableLanguage
8.0.x-devtaskNormalclosed (duplicate)DX (Developer Experience)API changeQuick fix
#2303525: Provide link tags to alternate languages (hreflang) in HTML head
8.0.x-devtaskNormalclosed (fixed)Drupalaton 2014
Assigned to paulmckibben
#2309671: Fix admin configuration page RTL CSS.
8.0.x-devbug reportNormalclosed (fixed)RTLCSSfrontend
#2315301: where core Language and language module Language were used in the same file take out the use core Language as LanguageObject and just call them Language
8.0.x-devtaskNormalclosed (cannot reproduce)DX (Developer Experience)SprintWeekend2015needs issue summary update
#2318817: remove method setId() from core/lib/Drupal/Core/Language/LanguageInterface
8.0.x-devtaskNormalclosed (fixed)DX (Developer Experience)API changeTCDrupal 2014
#2326837: Fix content preview RTL CSS.
8.0.x-devbug reportNormalclosed (fixed)frontendRTLCSS
#2326885: Convert language_element_info() to Element classes
8.0.x-devtaskNormalclosed (fixed)hook_element_infoNovice
#2328293: Remove usage of language_list()
8.0.x-devtaskNormalclosed (fixed)Novice@deprecatedAmsterdam2014#dcdelhi
#2329649: Fix node create page RTL CSS
8.0.x-devbug reportNormalclosed (fixed)RTLCSSfrontend
#2332739: Remove SortArray::sortByWeightAndTitle
8.0.x-devtaskNormalclosed (fixed)
#2336743: When more than one language is added in the profile, the installer ignores those
8.0.x-devbug reportNormalclosed (fixed)D8MIAMSAmsterdam2014
Assigned to penyaskito
#2340667: Protect Drupal\Core\Language\Language::id, and use getId()
8.0.x-devtaskNormalclosed (fixed)Amsterdam2014Avoid commit conflicts
#2343943: Language domain may not be left blank for default language
8.0.x-devbug reportNormalclosed (fixed)NoviceAmsterdam2014
#2344303: Language Translation Replaces Title and Menu Link Title
8.0.x-devbug reportNormalclosed (works as designed)
#2345969: Keep English during installation
8.0.x-devbug reportNormalclosed (fixed)Amsterdam2014
#2345985: install_import_translation() fails if the language already exists
8.0.x-devbug reportNormalclosed (fixed)Amsterdam2014
Assigned to k4v
#2346323: Set default language during installation
8.0.x-devbug reportNormalclosed (fixed)Amsterdam2014
#2350489: Language domain may not be ??? for default language
8.0.x-devbug reportNormalclosed (duplicate)NoviceAmsterdam2014
#2359879: Session negotiation settings cannot actually be changed on the UI
8.0.x-devbug reportNormalclosed (fixed)Needs tests
#2393267: Add missing RTL rules to Views UI CSS
8.0.x-devbug reportNormalclosed (fixed)frontendRTLCSSLONDON_2014_DECEMBER
#2396473: Add missing RTL rules to System CSS
8.0.x-devbug reportNormalclosed (fixed)frontendRTLCSSSprintWeekend2015SprintWeekend2015Queuedrupaldevdays
#2396483: Add missing RTL rules to Seven theme CSS
8.0.x-devbug reportNormalclosed (fixed)frontendRTLCSSNeeds manual testingSprintWeekend2015#punedrupalgroupSprintWeekend2015QueueNovicedrupaldevdays
#2396489: Add missing RTL rules to Bartik theme CSS
8.0.x-devbug reportNormalclosed (fixed)frontendRTLCSS#drupalcampbrightonSprintWeekend2015
#2404929: Path class on <body> may be language specific, results in CSS bugs
8.0.x-devbug reportNormalclosed (fixed)CSSNoviceNeeds testsSprintWeekend2015SprintWeekend2015Queue
Assigned to segi
#2405939: use_current_language upcasting option is misleading, it toggles all overrides not just language
8.0.x-devbug reportNormalclosed (fixed)SprintWeekend2015SprintWeekend2015Queue
Assigned to alexpott
#2407125: LanguageInterface should not support setName
8.0.x-devbug reportNormalclosed (fixed)NoviceSprintWeekend2015SprintWeekend2015Queue
#2411597: Class 'path-frontpage' missing from <body>
8.0.x-devbug reportNormalclosed (fixed)
#2420239: Default language setting form needs validation
8.0.x-devbug reportNormalclosed (fixed)
#2494915: Fix comment in ViewEditTest.php
8.0.x-devtaskMinorclosed (fixed)Novice
#2542304: Define 'direction' in \Drupal\Core\Language\LanguageManager::getDefaultLockedLanguages
8.0.x-devtaskNormalclosed (fixed)PerformanceNovice
Assigned to sorressean
#2581817: Follow-up for #2505263: clean up comments
8.0.x-devtaskMinorclosed (fixed)rc eligible
#2225293: Migrate D6 and D7 language negotiation settings
8.3.x-devtaskNormalclosed (fixed)i18n-migratedrupal6migrate-d7-d8SprintWeekend2016migrate-d6-d8Dublin2016
#2656202: Add Simple English to Drupal core
8.2.x-devtaskNormalclosed (fixed)Usabilitysimple english
#2657978: Variable to config: language_default [D6 & D7]
8.2.x-devtaskNormalclosed (fixed)i18n-migratemigrate-d6-d8migrate-d7-d8rc eligibleblocker