language.settings contains the settings for every translateable bundle in the system. While there's still some debate on how well the entity system scales regarding bundles, theofficial (as in, subsystem maintainer) word is "not so bad".
To the contrary, core/modules/language/src/Form/ContentLanguageSettingsForm.php puts every translateable bundle in a single form. That's actually bad. I expect hundreds of bundles on most sites I will be working with and I wouldn't be surprised to see thousands. The config object, accordingly, will be huge and unnecessarily it'll be loaded all the time when only a tiny bit of it is needed.
Also, this is a UX problem: node type settings should be on the node form.
Beta phase evaluation
|Issue category||Bug, performance bug.|
|Issue priority||Critical because will effect the entire system for any site more than a simple one.|
Allowed in d8 beta because it is a critical bug.
Keep the form, when the time comes someone likely will write a contrib form scaling better. But to support it we must split the config object.
The Config object is moved into a specific config entity type which stores the language option on a entity type and bundle base.
|Task||Novice task?||Contributor instructions||Complete?|
|Create a patch||Instructions||Done in #74|
|Update the issue summary||Instructions|
|Update the issue summary noting if allowed during the beta||Instructions||done|
|Add automated tests (added testTaxonomyVocabularyUpdate and ContentLanguageSettingsUnitTest)||Instructions||done.|
|Draft a change record for the API changes||Instructions||done|
|Manually test the patch||Novice||Instructions|
|Review patch to ensure that it fixes the issue, stays within scope, is properly documented, and follows coding standards||Instructions|
User interface changes
FAILED: [[SimpleTest]]: [PHP 5.4 MySQL] Unable to apply patch 2355909-language-content-settings-126.patch. Unable to apply patch. See the log in the details link for more information. View
|#68||interdiff.txt||9.13 KB||Gábor Hojtsy|
|#68||2355909.68.patch||68.67 KB||Gábor Hojtsy|
FAILED: [[SimpleTest]]: [PHP 5.4 MySQL] 80,576 pass(es), 1 fail(s), and 0 exception(s). View
FAILED: [[SimpleTest]]: [PHP 5.4 MySQL] 80,672 pass(es), 9 fail(s), and 1 exception(s). View
FAILED: [[SimpleTest]]: [PHP 5.4 MySQL] 80,554 pass(es), 9 fail(s), and 2 exception(s). View